sql - 如何获取每行 SQL 的最新版本?
问题描述
我正在尝试使用此查询来获取每个广告系列的每日费用,但我只获得了一个广告系列的费用。每个活动都有相同的“_sdc_sequence”,但每天都有很多“_sdc_sequence”。我如何才能获得每个广告系列每天最后一个版本的所有成本,并选择一些变量,如日期、成本、展示次数和广告系列?因为现在我得到了我的数据库的每一个变量
“_sdc_sequence”是复制期间附加到记录的unix epoch,并确定行的所有版本的顺序。
我附上了一张带桌子的照片。我只需要选择最后一个序列(最大_sdc_sequence)
#standardSQL
SELECT row.* FROM (
SELECT ARRAY_AGG(t ORDER BY _sdc_sequence DESC LIMIT 1)[OFFSET(0)] row
FROM `adxxxxx_xxxxxxxx` t
GROUP BY day
谢谢
解决方案
#standardSQL
SELECT row.* FROM (
SELECT ARRAY_AGG(t ORDER BY _sdc_sequence DESC LIMIT 1)[OFFSET(0)] row
FROM `adxxxxx_xxxxxxxx` t
GROUP BY day, campaign