表中的SELECT值,因为不满足两个条件

时间:2013-02-15 01:03:59

标签: mysql pdo

我的数据库上有三个表:

ts_room

字段:

id (PK)
capacity    
img 
notes   
building_id 
roomstructure_id    
lecturestyle_id

ts_request

字段

id (PK)
day_id
period_id
roompref_id (FK > ts_roompref.id)

ts_roompref

id (PK)      
request_id (FK > ts_request.id)      
room_id (FK > ts_room.id)

我想写一个MySQL PDO查询,从 ts_room 中选择行,前提是在 ts_roompref 上运行行(检查ts_roompref.room_id对ts_room.id)和找到匹配项 - 然后我们会在 ts_request 中查找该值,看看 day_id period_id 是否都匹配1.它会返回总计数

我希望上面的解释是有道理的。

基本上 - 房间的请求是使用此系统进行的, ts_roompref 存储为每个请求创建的房间首选项。我想知道某个房间是否在期间预订(由 day_id period_id 在 ts_request 表中),在本例中为Monday(1)和period(1)。

1 个答案:

答案 0 :(得分:1)

怎么样?

SELECT  COUNT(*) totalCOUnt
FROM    ts_room a
        INNER JOIN ts_roompref b
            ON a.id = b.room_ID
        INNER JOIN ts_request c
            ON b.request_ID = c.roompref_ID
WHERE   c.day_ID = 1 AND c.period_ID = 1

要进一步了解联接,请访问以下链接: