簡體   English   中英

MySQL - 檢查兩個值是否相等或兩者都是NULL?

[英]MySQL - Check if two values are equal or both NULL?

如果我想比較兩個值,我可以寫:

SELECT * FROM table1
JOIN table2 ON table1.col = table2.col;

我注意到,如果同時這不起作用table1.coltable2.colNULL 所以我更正后的查詢如下所示:

SELECT * FROM table1
JOIN table2 ON 
  (table1.col = table2.col)
  OR
  (table1.col IS NULL AND table2.col IS NULL);

這是比較兩個值的正確方法嗎? 如果它們都是NULL有沒有辦法說兩個值相等?

比較NULL = NULL將返回NULL ,這不是真的,因此連接將不會成功。 您可以使用NULL安全運算符 <=>

SELECT * FROM table1
JOIN table2 ON table1.col <=> table2.col;

暫無
暫無

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

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