2013-08-17 43 views
1

我有兩個表,其結構如下 表作者 姓氏,FIRST_NAME,AUTHOR_ID(PK)(外鍵由TITLEAUTHOR refferenced)使用COUNT聚合條款內加入

表TITLEAUTHOR 的title_id (pk) author_id(參考外鍵), 標題

我想退休的作者有兩個或多個標題,列出他們的名字和發表的書籍數量。

然而,當我嘗試加入,計數,我得到的是「功能組這裏不允許」。我是在SQL中begginner錯誤,我怎麼做到這一點呢?下面是我的代碼

SELECT last_name,first_name 
FROM authors a 
JOIN titleauthor ta 
ON ta.author_id= a.author_id 
WHERE COUNT(ta.author_id)>2 
ORDER BY author_lname; 

回答

1

您需要在添加group by子句後,用having替換where

SELECT a.last_name, a.first_name 
FROM authors a 
JOIN titleauthor ta 
ON ta.author_id= a.author_id 
GROUP BY a.last_name, a.first_name 
HAVING COUNT(ta.author_id)>2 
ORDER BY a.last_name, a.first_name; 
+0

感謝phlogratos,它已經工作了,我很感激。 –