用于SELECT MAX查询的BigQuery子查询

时间:2018-01-10 22:53:28

标签: google-bigquery

我想在BigQuery中运行以下查询,

SELECT t1.Phone, t1.isOptOut, t1.campaignId, t1.timestamp
FROM PhoneTable t1
WHERE t1.campaignId=1
AND t1.timestamp > (
      SELECT MAX(timestamp) 
      FROM PhoneTable t2
      WHERE t2.Phone = t1.Phone
      AND t2.isOptOut = TRUE
      AND t2.campaignId IS NULL
)
ORDER BY t1.timestamp DESC
LIMIT 1

我只想检索一条没有其他记录覆盖它的记录(基于时间戳)。我知道BigQuery不支持引用外部查询列的子查询,我在这里看到了一些示例,但我不知道如何修复此查询。如果我更改子查询中的WHERE并添加t2.phone =" + 15556665555"它有效,但我需要它等于外部查询中的电话。

谢谢!

0 个答案:

没有答案