从Google大查询中获取最大记录

时间:2020-02-05 04:07:05

标签: sql google-bigquery

我有一张有198Mil条记录的表。

我正在使用此查询来获取每个ID的最新记录:

with cte as (
select *, row_number() OVER (Partition by ATTOM_ID ORDER BY LastLoadDate DESC) rnum from `mother-216719.PROPERTY.ATTOM_DETAIL`
) Select * from cte where rnum = 1

值得注意的是,此表中有240列。

这已经运行了一个多小时,无济于事。 有没有办法使这项工作? 谢谢!

1 个答案:

答案 0 :(得分:1)

尝试以下方法-通常会有所帮助

#standardSQL
SELECT AS VALUE ARRAY_AGG(t ORDER BY LastLoadDate DESC LIMIT 1)[OFFSET(0)]
FROM `mother-216719.PROPERTY.ATTOM_DETAIL` t
GROUP BY ATTOM_ID 
相关问题