1
條款我有以下查詢:左連接以計數和凡右側
SELECT G.groupCode, G.groupName, COUNT(C.cdCode) AS numberOfTops10CDs FROM musicalgroup G
LEFT OUTER JOIN cd C ON C.groupCode = G.groupCode
WHERE C.cdCode IN
(SELECT cdCode FROM topcds WHERE rating <= 10)
GROUP BY G.groupCode
在這種情況下它不會顯示該組相關聯的,如果計數爲0。我想這表明從每一個元素musicalgroup即使計數爲0 當我這樣做:
SELECT G.groupCode, G.groupName, COUNT(C.cdCode) AS numberOfTops10CDs FROM musicalgroup G
LEFT OUTER JOIN cd C ON C.groupCode = G.groupCode
GROUP BY G.groupCode
這表明即使計數爲0,但我只需要顯示的CD與10歲以下的評級我怎麼會完成這兩項的一個查詢中的目標?
警告:此查詢包含'SELECT'子句中的非聚合列,甚至不會在最新版本的MySQL(或大多數其他RDBMS)上運行。 –
其MS - SQL語法(SQL_ SERVER)。不MYSQL ..也參考http://stackoverflow.com/questions/5920070/why-cant-you-mix-aggregate-values-and-non-aggregate-values-in-a-single-select –
這不會在SQL Server上運行以確定。你不能選擇'groupName',因爲它不是一個聚合,也不會出現在'GROUP BY'列表中。 –