跳过在表中提取不需要的数据

时间:2015-03-02 02:07:11

标签: php mysql sql database mysqli

我会简单的。

我有2张桌子

=room_service=
-id
-room_id
-service_name

=room=
-id
-room_type

*客房服务可以具有相同的room_id,它依赖于房间表,并且应该具有不同的service_name

例如:

room_id(1)
service_name(extra person)

room_id(1)
service_name(extra person with bed)

现在,我想获取所有没有service_name等于“额外的人床”的房间ID。我试过这个

select id from room_service where service_name != "extra person with bed"

虽然它使用服务名称“额外的人床”来跳过id,但它仍然获取具有其他服务名称的相同ID,因此如果id在表中出现两次,则查询无效

希望你们能帮忙

1 个答案:

答案 0 :(得分:2)

有几种方法可以解决这个问题。

使用子查询:

SELECT id 
FROM   room_service
WHERE  id NOT IN
(
      SELECT id 
      FROM   room_service 
      WHERE  service_name != "extra person with bed"
)

如果我有桌子结构,我可以向你展示其他一些方法。