我有三個表room_charges,room_category和patient_detailMYSQL:空置/有人佔用的房間爲現在
room_category
id room_category
1 twin
2 classic
3 Deluxe
room_charges
id room_name room_category
1 tw1 1
2 tw2 1
3 cl1 2
4 cl2 2
5 dl1 3
patient_detail
id patient_name room_name room_category admission_date_time discharge_date_time discharged
1 Mr x 1 1 10-12-14 10:40 12-12-14 08:40 1
2 Mr y 1 1 12-12-14 11:40 15-12-14 13:10 1
3 mr z 1 1 15-12-14 14:40 null null
我使用的查詢,找到vacant_beds細節,但按照該patient_detail表ROOM_ID 1被佔用,但我得到空置。 我使用的查詢是這樣的:
select `rc`.`id` AS `id`,
`rct`.`room_category` AS `room_category`,
group_concat(`rc`.`room_name` separator ',') AS `vacant_beds`
from ((`room_charges` `rc`
left join `patient_detail` `pd` on((`rc`.`id` = `pd`.`room_name`)))
join `room_category` `rct` on((`rc`.`room_category` = `rct`.`id`)))
where ((`pd`.`discharged` = 1) or isnull(`pd`.`admission_date_time`))
group by `rc`.`room_category`
having max(admission_date_time)
我創建一個視圖來獲得空置牀信息,並不能使用子查詢。 非常感謝您的合適解決方案。
好吧,我把我下面的期望的結果如下:
room_category room_name
twin tw2
classic cl1,cl2
deluxe dl1
這意味着,按照患者詳細信息表室TW1仍被佔用,不應該在查詢結果中顯示。
排放是1你ROOM_ID 1,因此其退還?你在期待什麼? – SMA
我想從該房間的最後一個記錄中檢索房間。 – Pawan
所以你應該檢查'出院是空'? – SMA