类似的问题:
select from two tables where linked column can be null
column1tab1 column2tab1 order_number product amount
xx yy 123 p1 2
xx yy 456 p3 4
xx yy NULL NULL NULL
xx yy 789 p2 1
etc...
海报的输出如上所述。但是,当我添加WHERE product
='p1'时,或者WHERE product
= NULL时,都返回一个空集。最终,我想要
SELECT *
FROM `t1`
LEFT OUTER JOIN `t2`
ON (`t1`.`id` = `t2`.`id2`)
WHERE `t2`.`product` = NULL
AND `t2`.`product` <> 'p1'
我做错了哪一部分?加入还是在哪里?或其他什么?
答案 0 :(得分:2)
答案 1 :(得分:1)
t2.product = NULL
总是假的。请改用t2.product IS NULL
。
答案 2 :(得分:0)
如果t2.product为null,则它总是与字符串'p1'不同。我认为不需要和。