2014-06-10 37 views
4

在MySQL中,我可以執行SELECT (SELECT COUNT(*) FROM table1) - (SELECT COUNT(*) FROM table2)以獲得兩個表之間的計數差異。當我在BigQuery中試用時,得到:Subselect not allowed in SELECT clause。如何在BigQuery中運行這樣的查詢?BigQuery減去兩個表的計數?

回答

4

當子查詢未在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 
+0

這是我結束了做什麼,但它看起來比MySQL的方式更噁心。是否有計劃在未來支持MySQL方式? – Eli

+0

您的選票是我們的計劃:) https://code.google.com/p/google-bigquery/issues/list?can=2&q=label%3DFeature-Request –