我有一个包含以下记录的bigquery表
_id |小时 |更新日期
id1 | 1 |2024-05-14 16:00:57 世界标准时间
id1 | 2 |2024-05-15 16:00:57 世界标准时间
id2 | 5 |2024-05-15 16:00:57 世界标准时间
我想返回最后更新的记录。应排除 2024-05-14 的记录,因为我们有更新的更新
id1 | 2 |2024-05-15 16:00:57 世界标准时间
id2 | 5 |2024-05-15 16:00:57 世界标准时间
如何在 BigQuery SQL 中执行此操作。
感谢您的帮助
使用
RANK()
:
WITH cte AS (
SELECT *, RANK() OVER (ORDER BY dateUpdated DESC) rnk
FROM yourTable
)
SELECT _id, hours, dateUpdated
FROM cte
WHERE rnk = 1;