BigQuery减去两个表的计数?

时间:2014-06-10 00:05:43

标签: google-bigquery

在MySQL中,我可以SELECT (SELECT COUNT(*) FROM table1) - (SELECT COUNT(*) FROM table2)来获取两个表之间的计数差异。当我在BigQuery中尝试这个时,我得到:Subselect not allowed in SELECT clause。如何在BigQuery中运行这样的查询?

1 个答案:

答案 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