我必須在3個表格上使用LEFT JOIN
:UNITS
,ROOMS_CHECK_IN
和COMMENTS
。基本上我想顯示UNITS
和每個房間的入住單位數和評論數。但是當我運行房間檢查和評論計數時,我得到的是相同的4位數字。如果我用單獨的左連接分開2個查詢,它可以正常工作。左邊加入3張桌子?
下面是查詢:
SELECT u.ID,
u.unit_name,
count(c.checkin_status) as total_chekin ,
count(com.ID) as total_comment ,
h.hospital_name
FROM HOSPITALS h, UNITS u
LEFT OUTER JOIN ROOMS_CHECK_IN c ON c.unit_id = u.ID AND c.room_status=0
LEFT OUTER JOIN COMMENTS com ON com.unit_id = u.ID
WHERE h.ID = u.hospital_id AND u.hospital_id=3
GROUP BY u.ID;
請幫助。
推廣使用顯式的'JOIN' sintaxis,阿龍貝特朗寫了一篇很好的文章[不良習慣踢:使用舊式JOINs](http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/08/bad-habits-to-kick-using-old-style-joins.aspx)。 –