如何限制BigQuery获得的行数?

时间:2019-04-30 13:21:02

标签: javascript node.js firebase google-bigquery

我正在尝试使用Firebase云功能从BigQuery表中获取一些数据到我的React前端。

我的表有14000多个行,所以我不想同时将它们全部放入,我希望发送一次获取100个左右的请求。

我在这里查看了文档:https://cloud.google.com/bigquery/docs/managing-table-data#browse-table

但是他们的解决方案似乎对返回的内容没有任何影响。

exports.getTableDataFromFrontEnd = functions.runWith(runtimeOpts).https.onCall((data, context) => {
  console.log('V23');

  let promise = new Promise(function(resolve, reject) {
    async function browseRows() {  

        // Create a client
        const bigqueryClient = new BigQuery();

        const datasetId = 'CSV_Upload';
        const tableId = 'Test_Table';

        //Limit the query to 100 rows (This is not working).
        const options = {
            limit: 100    
        };

        // List rows in the table
        const [rows] = await bigqueryClient
          .dataset(datasetId)
          .table(tableId)
          .getRows(options)

          resolve(rows) //This still has 14000+ rows.
      }
      browseRows();
    });    
    return promise;
  });

1 个答案:

答案 0 :(得分:2)

我不确定您使用的是哪个库,但是如果是这个库,则选项的名称为maxResults,而不是limit

enter image description here