2015-06-04 7 views
-1

Хорошо, я полагаю, что раньше делал что-то подобное, но не помню, как я это сделал.Выберите из списка с номером

Поиск вокруг дает мне аналогичный ответ, но не решает мою проблему.

Ex1, Этот запрос отлично:

SELECT col1, count(*) as col3 
FROM db.table 
WHERE col2 = 0 group by col1 

Ex2, но мне нужно все, где col3 больше, чем 1, так что я пробовал:

Select * 
FROM 
(SELECT col1, count(*) as col3 
FROM db.table 
WHERE col2 = 0 group by col1) 
WHERE col3 > 1; 
# Not working 

Ex3, я не знаю, почему, но это похоже, работает:

SELECT col1, count(*) as col3 
FROM db.table 
WHERE col2 = 0 
GROUP BY col1 
HAVING count(*) > 1; 
+0

Почему нисходящий, люди, кажется, просто нивелируют вопрос без причины, обратите внимание, что я также ответил на свой вопрос, пока я писал его, поэтому я подумал, возможно, это может помочь кому-то другому. – Conjak

ответ

1

Хорошо, я просто ответил на свой вопрос, когда прочитал сообщение об ошибке от Mysql.

Select * 
FROM 
(SELECT col1, count(*) as col3 
FROM db.table 
WHERE col2 = 0 group by col1) temp 
WHERE col3 > 1; 

Мне не хватало псевдонима.

Смежные вопросы