创建mySQL子查询以列出来自两个查询的不同行

时间:2015-11-04 14:53:07

标签: mysql sql mysqli

我有两个问题:

'SELECT * FROM `table `WHERE weight = 0 OR weight IS NULL'

'SELECT * FROM `table `

第一个查询返回大约4000个值,第二个查询返回大约4100个。

我尝试创建一个查询,该查询将返回两个值之间不同的行,我尝试使用嵌套或子查询,但我在这里挣扎于语法。之前只使用过非常简单的查询。任何人都可以建议我如何做到这一点。

3 个答案:

答案 0 :(得分:2)

我认为这可以满足您的需求:

SELECT *
FROM `table`
WHERE NOT (weight = 0 OR weight IS NULL);

更简单地写为:

SELECT *
FROM `table`
WHERE weight <> 0;

答案 1 :(得分:1)

使用MINUS运算符如下

 SELECT * FROM `table`
 MINUS
 SELECT * FROM `table` WHERE weight = 0 OR weight IS NULL

答案 2 :(得分:1)

SELECT * FROM table1 
WHERE (table1.weight = 0 OR table1.weight IS NULL)
AND table1.Column not in (SELECT table2.column
                          FROM table2)