在MySQL中,我可以SELECT (SELECT COUNT(*) FROM table1) - (SELECT COUNT(*) FROM table2)
来获取两个表之间的计数差异。当我在BigQuery中尝试这个时,我得到:Subselect not allowed in SELECT clause
。如何在BigQuery中运行这样的查询?
答案 0 :(得分:7)
2019更新:
#standardSQL
现在支持原始问题语法SELECT (SELECT COUNT(*) c FROM `publicdata.samples.natality`)
- (SELECT COUNT(*) c FROM `publicdata.samples.shakespeare`)
由于SELECT子句中不支持子选择,我将对此特定查询使用CROSS JOIN:
SELECT a.c - b.c
FROM
(SELECT COUNT(*) c FROM [publicdata:samples.natality]) a
CROSS JOIN
(SELECT COUNT(*) c FROM [publicdata:samples.shakespeare]) b