Google bigquery BigQuery:API查询提供排序结果,而不使用order by
以下是我的查询(我使用标准SQL):Google bigquery BigQuery:API查询提供排序结果,而不使用order by,google-bigquery,Google Bigquery,以下是我的查询(我使用标准SQL): 如果我通过API执行此操作,并通过GCS bucket将结果作为json下载,我将得到一个文件,其中的行由聚合数组中的ID排序。类似这样的内容: {[x=>“xxxx”,“ids=>[]} {[x=>“zzzz”,“ids”=>[0]} {[x=>“yyyy”,“ids”=>[0,7]} {[x=>“aaaa”,“ids”=>[0,7,8]} {[x=>“cccc”,“ids”=>[0,8]} {[x=>“ffff”,“ids”=>[1,5]} {[x=>
如果我通过API执行此操作,并通过GCS bucket将结果作为json下载,我将得到一个文件,其中的行由聚合数组中的ID排序。类似这样的内容:
{[x=>“xxxx”,“ids=>[]}
{[x=>“zzzz”,“ids”=>[0]}
{[x=>“yyyy”,“ids”=>[0,7]}
{[x=>“aaaa”,“ids”=>[0,7,8]}
{[x=>“cccc”,“ids”=>[0,8]}
{[x=>“ffff”,“ids”=>[1,5]}
{[x=>“uuuu”,“ids”=>[1,5,6,8,9]}
等等……
当我通过UI执行查询时,正如我所期望的那样,我没有得到任何特定的顺序。
为什么在导出的结果中,行以这种方式排列?排序是任意的,并且可以随时更改,而无需使用排序依据,除非您没有明确指定排序依据,否则排序将是任意的。
(
SELECT
x,
ARRAY_AGG(DISTINCT i IGNORE NULLS) AS sids
FROM (
SELECT
*
FROM
(SELECT
x,
y
FROM
table1)
LEFT JOIN (
SELECT
*
FROM
table5_*)
ON
y = e)
GROUP BY
y,
x)