une*_*ner 4 row-number large-data google-bigquery
我需要在BigQuery中为行(大约十亿行)数据集添加行号.当我尝试:
SELECT
*
ROW_NUMBER() OVER (ORDER BY d_arf DESC) plarf
FROM [trigram.trigrams8]
Run Code Online (Sandbox Code Playgroud)
我得到"在查询执行期间超出资源.",因为分析/窗口函数需要适合一个节点.
如何在BigQuery中向大型数据集添加行号?
你没有给我一个有效的查询,所以我必须创建自己的查询,所以你需要将它翻译成你自己的问题空间.另外我不确定你为什么要在如此巨大的数据集中为每一行提供一个行号,但接受了挑战:
SELECT a.enc, plarf, plarf+COALESCE(INTEGER(sumc), (0)) row_num
FROM (
SELECT STRING(year)+STRING(month)+STRING(mother_age)+state enc,
ROW_NUMBER() OVER (PARTITION BY year ORDER BY enc) plarf,
year
FROM [publicdata:samples.natality] ) a
LEFT JOIN (
SELECT COUNT(*) c, year+1 year, SUM(c) OVER(ORDER BY year) sumc
FROM [publicdata:samples.natality]
GROUP BY year
) b
ON a.year=b.year
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7254 次 |
| 最近记录: |