Google bigquery BigQuery,如果基于条件存在重复项,如何返回一个值
我有这张桌子 REGIONID字符串Google bigquery BigQuery,如果基于条件存在重复项,如何返回一个值,google-bigquery,Google Bigquery,我有这张桌子 REGIONID字符串 结算日期时间戳 干预字符串 RRP数字 大多数情况下,干预是0,但在相同的情况下,它有两个记录(0,1),那么RRP必须基于值1,在SQL中如何做到这一点? 以下可用于实现所需结果: SELECT *, EXCEPT(RN) FROM ( SELECT RRP, ROW_NUMBER() OVER(partition BY REGIONID, SETTLEMENTDATE ORDER BY INTERVENTION DESC) AS RN ) WHER
结算日期时间戳
干预字符串
RRP数字 大多数情况下,干预是0,但在相同的情况下,它有两个记录(0,1),那么RRP必须基于值1,在SQL中如何做到这一点?
以下可用于实现所需结果:
SELECT *, EXCEPT(RN) FROM (
SELECT RRP, ROW_NUMBER() OVER(partition BY REGIONID, SETTLEMENTDATE ORDER BY INTERVENTION DESC) AS RN
)
WHERE RN=1
以下可用于实现预期结果:
SELECT *, EXCEPT(RN) FROM (
SELECT RRP, ROW_NUMBER() OVER(partition BY REGIONID, SETTLEMENTDATE ORDER BY INTERVENTION DESC) AS RN
)
WHERE RN=1
下面是BigQuery标准SQL
#standardSQL
SELECT REGIONID, SETTLEMENTDATE,
ARRAY_AGG(STRUCT(INTERVENTION, RRP) ORDER BY INTERVENTION DESC LIMIT 1)[OFFSET(0)].*
FROM `project.dataset.table` t
GROUP BY REGIONID, SETTLEMENTDATE
下面是BigQuery标准SQL
#standardSQL
SELECT REGIONID, SETTLEMENTDATE,
ARRAY_AGG(STRUCT(INTERVENTION, RRP) ORDER BY INTERVENTION DESC LIMIT 1)[OFFSET(0)].*
FROM `project.dataset.table` t
GROUP BY REGIONID, SETTLEMENTDATE