Mysql Inner加入同一个表

时间:2015-02-03 09:51:20

标签: mysql

bp_hotel_items的表结构

|id|hotel_id|area_id|item_id|price|
|4 |2       |2      |2      |50.00
|5 |2       |2      |3      |100.00
|6 |2       |2      |4      |100.00
|7 |2       |2      |5      |170.00
|10|2       |2      |6      |70.00
|29|1       |0      |2      |95.00
|30|1       |0      |3      |150.00
|31|1       |0      |4      |300.00
|32|1       |0      |5      |120.00

上面是表格,我使用了这个查询

SELECT DISTINCT a.item_id 
FROM bp_hotel_items a 
WHERE a.hotel_id IN (1,2 ) AND a.item_id NOT IN (2,3)"

预期产出:

item_id
4
5

但是我得到了这个输出:

item_id
4
5
6

任何人都可以帮我查询,以便输出为例外吗?

1 个答案:

答案 0 :(得分:3)

此查询应该为您提供预期结果:

SELECT DISTINCT a.item_id 
from bp_hotel_items a 
WHERE a.hotel_id IN (1,2 ) AND a.item_id NOT IN (2,3,6)