我正在做一些關於自己學習的練習,並且我在子羣中遇到了這個練習 。具有Aggregate和條件語句的SQL語句
http://studybyyourself.com/seminar/sql/exercises/7-1/?lang=en
我聽錯了第一次(我把與作者的名字一個WHERE語句),然後我檢查瞭解決方案,它是
SELECT *
FROM Author AS a
INNER JOIN Writing AS w ON w.Author_id = a.ID
INNER JOIN Book AS b ON b.ID = w.Book_id
GROUP BY b.ID
HAVING COUNT(*) = 1 AND a.Last_Name = 'Duncan' AND a.First_name = 'Andrew'
所以我認爲這是正常的只要將它們與HAVING語句中的聚合進行配對,就使用條件非聚合語句,是否正確?
我刪除了不兼容的數據庫標籤。請標記您真正使用的數據庫。 –
它的工作原理,但我更喜歡'where'子句做所有可能的過濾。我更喜歡'有'做彙總過濾 – zedfoxus