Mysql 选择不同数据的计数

Mysql 选择不同数据的计数,mysql,sql,Mysql,Sql,我有一个查询,它将计算id'id_avocat'出现的次数。我想选择id只出现一次的id 这是我的疑问: SELECT id_avocat a, COUNT(*) asd ,`planificare` FROM `generare_liste` WHERE `planificare`="instantelor" AND asd <2 GROUP BY a ORDER BY COUNT(*) DESC 我得到了这个错误:“where子句”中的未知列“asd”,但是如果我只在s

我有一个查询,它将计算id'id_avocat'出现的次数。我想选择id只出现一次的id

这是我的疑问:

   SELECT id_avocat a, COUNT(*) asd ,`planificare` FROM `generare_liste` WHERE `planificare`="instantelor" AND  asd <2   GROUP BY a ORDER BY COUNT(*) DESC 
我得到了这个错误:“where子句”中的未知列“asd”,但是如果我只在select中使用“asd”,而不是在where子句中,我不会得到任何错误

如何选择count*小于2的id?

使用HAVING子句:


顺便说一句,你的小组中a列是什么?

让我们从你的问题中假设你的表格结构

    ID_AVOCAT   ASD     PLANIFICARE     A
    1           3       instantelor     a
    2           0       instantelor     c
    3           1       instantelor     b
    4           3       instantelor     b
    6           2       instantelor     b
那么您的查询必须是这样的

SELECT id_avocat,
   asd ,
  `planificare`
from `GENERARE_LISTE`
group by a
having count(*) < 3

是否要从表格中选择第二个最小的?否,请选择计数小于2的id。在选择之前执行where条件,因此别名未知且无法使用
SELECT id_avocat,
   asd ,
  `planificare`
from `GENERARE_LISTE`
group by a
having count(*) < 3