簡體   English   中英

Mysql JOIN子查詢

[英]Mysql JOIN subquery

我應該如何查詢

  • 我有(table1)行,在其他表中可以沒有任何行或幾行引用它
  • 這些引用(表2)行的colum1可以為null或日期

我想讓table1中的所有行都具有table2中的所有列column1不為null或根本沒有任何行。

當然,基本的sql是這樣的:

SELECT table1.* FROM table1 JOIN table2 ON table2.id = table1.table2_id

但是接下來呢?

您可以像SUM(CASE WHEN table2.col IS NULL THEN 1 ELSE 0 END) AS nullcount這樣的查詢來計算查詢中null的出現, SUM(CASE WHEN table2.col IS NULL THEN 1 ELSE 0 END) AS nullcount ,我假設table2.col是其中日期為null的那個

SELECT 
  table1.*,
  SUM(
    CASE
      WHEN table2.col IS NULL 
      THEN 1 
      ELSE 0 
    END
  ) AS nullcount 
FROM
  table1 
  JOIN table2 
    ON table2.id = table1.table2_id 
HAVING nullcount > 0 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM