2015-03-17 2 views
1

Я должен распечатать только издателям, которые опубликованы более чем 2 книги, но для моих результатов, я всегда получаюHAVING более 2-х книг

PUB_NAME   |TOTAL  
-------------------------------- 
Abatis Publishers |4   
Core Dump Books  |1  <------don't want to print  
Schadenfreude Press |3   
Tenterhooks Press |5 

ERROR 42X01: Syntax error: Encountered "HAVING"

Это мой код до сих пор.

SELECT pub_name, COUNT(title_name) AS total 
FROM publishers 
INNER JOIN titles 
ON titles.pub_id = publishers.pub_id 
GROUP BY pub_name; 
HAVING total > 2; 
+1

Что это значит с java? –

+2

Обратите внимание, что ваша точка с запятой подразумевает, что запрос выполняется после 'GROUP BY' ... – jonrsharpe

ответ

2

общая не признают в HAVING. Попробуйте HAVING COUNT (название_имя)> 2;

Также удалите ';' в GROUP BY pub_name;

0

Просто используйте WHERE

SELECT p.pub_name, COUNT(t.title_name) AS total 
FROM publishers p 
INNER JOIN titles t ON t.pub_id = p.pub_id 
WHERE COUNT(t.title_name) > 2 
GROUP BY p.pub_name;