我有查詢:執行與加入查詢連接到可能不存在行
SELECT `gigs`.*, COUNT(`signups`.`signupID`) AS `signupsPending` FROM `gigs` NATURAL JOIN `signups` WHERE (`signupStatus` = 4) GROUP BY `gigID`
即查詢,看起來像這樣一個數據庫:
+-------+---------+------------+
| gigID | gigName | gigDate |
+-------+---------+------------+
| 1 | Foo | 01/01/2014 |
+-------+---------+------------+
| 2 | Bar | 16/01/2014 |
+-------+---------+------------+
+----------+-------+--------------+--------------+
| signupID | gigID | signedUserID | signupStatus |
+----------+-------+--------------+--------------+
| 1 | 1 | 1 | 1 |
+----------+-------+--------------+--------------+
| 2 | 1 | 2 | 4 |
+----------+-------+--------------+--------------+
| 3 | 1 | 3 | 2 |
+----------+-------+--------------+--------------+
| 4 | 2 | 1 | 2 |
+----------+-------+--------------+--------------+
但是當我做查詢上面,它只顯示gigID = 1的行。我怎樣才能改變上面的查詢,所以它會顯示0與行的其餘部分?
外部聯接隊友:http://mysql-tips.blogspot.co.uk/2005/04/mysql-outer-join-sql-tutorialexamples.html – Raad 2013-03-15 16:40:15
我做嘗試外部連接,但沒有其他事情發生 – topherg 2013-03-15 16:44:53
對不起 - 隊友 - 術語模糊。 'LEFT'和'LEFT OUTER'是一樣的,並且使我傾向於將'OUTER'和'LEFT'交替地處理(我不好)。 – Raad 2013-03-15 16:55:30