Google bigquery 如何在BigQuery中使用EXISTS并获取与过去日志匹配的内容
我想知道。今天访问的人过去访问过吗?人数Google bigquery 如何在BigQuery中使用EXISTS并获取与过去日志匹配的内容,google-bigquery,Google Bigquery,我想知道。今天访问的人过去访问过吗?人数 SELECT COUNT(user_id) AS repeater_user_count FROM [access_log] AS table1 WHERE _PARTITIONTIME = TIMESTAMP('2017-02-28') AND EXISTS ( SELECT 1 FROM [access_log] AS table2 WHERE _PARTITIONTIM
SELECT
COUNT(user_id) AS repeater_user_count
FROM
[access_log] AS table1
WHERE
_PARTITIONTIME = TIMESTAMP('2017-02-28')
AND
EXISTS
(
SELECT
1
FROM
[access_log] AS table2
WHERE
_PARTITIONTIME BETWEEN TIMESTAMP('2017-01-31') AND TIMESTAMP('2017-02-27')
AND
table1.user_id = table2.user_id
)
但是,BigQueryUI会发出一个错误
Error: error at: 8.1 - 13.184. Only one query can be executed at a time.
如何通过BigQuery引用同一个表
谢谢。请先确认一下。比如说,
#standardSQL
SELECT
COUNT(user_id) AS repeater_user_count
FROM
`access_log` AS table1
WHERE
_PARTITIONTIME = '2017-02-28'
AND
EXISTS
(
SELECT
1
FROM
`access_log` AS table2
WHERE
_PARTITIONTIME BETWEEN '2017-01-31' AND '2017-02-27'
AND
table1.user_id = table2.user_id
);
考虑
的另一种选择 标准SQL 选择COUNTuser\u id作为中继器用户计数 从…起 选择不同的用户标识 从“访问日志” 其中_PARTITIONTIME='2017-02-28' 用户标识在哪里 选择不同的用户标识 从“访问日志” 其中_“2017-01-31”和“2017-02-27”之间的分区时间@YamadaJP-它不是关于标准-它更多的是关于在vs EXISTS中使用的逻辑,甚至更重要-使用DISTINCT使查询更高效,顺便说一句,否则您的计数是错误的:oI很高兴它有帮助!当其中一个答案解决了您关于StackOverflow的问题时,请接受并有选择地向上投票。有关更多信息,请参阅。