从数据表中排除和包含记录

时间:2015-04-15 17:38:35

标签: mysql

以下查询将排除所有等于4的type_id。

SELECT *
FROM `release` r
LEFT JOIN type t ON t.release_group_id = r.release_group_id AND t.type_id = 4
WHERE t.type_id IS NULL

但是,我还希望包含所有等于2的type_id。

如何?

2 个答案:

答案 0 :(得分:1)

只需在OR子句中添加WHERE,然后在ON子句中添加类型ID

SELECT *
FROM `release` r
LEFT JOIN type t ON t.release_group_id = r.release_group_id AND t.type_id IN(4,2)
WHERE t.type_id IS NULL OR t.type_id = 2 

答案 1 :(得分:0)

查询看起来不正确,但您可以按如下方式添加其他类型ID:

LEFT JOIN type t ON t.release_group_id = r.release_group_id AND t.type_id in (4, 2)