2017-02-26 22 views
1

GoogleスプレッドシートAPI(v3)に依存するアプリケーションのGoogleスプレッドシートAPI v4への移行を開始したいと考えています。しかし、私が始める前に残っている1つの質問があります。GoogleスプレッドシートAPI v4を使用して行を取得するための構造化クエリの処理方法

GoogleスプレッドシートAPI v3では、要求URLのsqパラメータを使用して、構造化クエリを使用して行ベースのフィードを取得できます。これは、シートに10000行があり、特定の列の特定の値を持つ行のみを取得する必要がある場合に便利です。速度面でも非常に効率的です。

はV4にGoogleの移行ガイドを見て、私は「行データの取得」の下にこの文を見つけました:

The Sheets API v4 does not currently have a direct equivalent for the Sheets 
API v3 structured queries. However, you can retrieve the relevant data and 
sort through it as needed in your application. 

にはどうすれば効率的にことを考えると10000行のシートから「関連データ」を取得する行くのですv4 APIに構造化クエリはありません。私はむしろその応答をふるいにかけるためにすべての10000行を取り出す必要はありません。特にそれは私のアプリを遅くし、おそらくデータをワイヤ上で送信される量を増加させるので。

v4 APIでは、特定の列(または列の集合)に特定の値を持つ行を取得するにはどうすればよいですか?

答えて

1

私はすでにドキュメントを参照している必要はありません。あなたはすでにそれを認識しているからです。 Sheetsv4にはそのような機能はありません。 Basic Reading methodsを手動で実行し、応答を解析し、それをループして、探している値を探します。

これはあなたのSO question hereに関連しています。私はすでにいくつかのコードを書いていますので、ここで結果を投稿するだけで、どのように値を検索したかがわかります。

enter image description here

phoneフェッチするために、私は、JSONレスポンスループスルー:

arrayBuffer = xhr.response; 
      console.log("arrayBuffer "+ arrayBuffer); 
      myArr = JSON.parse(arrayBuffer); 

       for(var i = 0; i < myArr.values.length; i++){ 

       if(myArr.values[0][i] === "phone"){ 
        console.log("column position is " + (i+1)); // +1 because counting starts at 0 
       } 
       } 

あなたはまたFeature Request hereを提出することができます。

関連する問題