mySQL-没有Group BY的Count函数

时间:2018-11-05 17:58:12

标签: mysql

我很难在代码中包含WHERE函数。

首先,我需要选择存在2次以上的idEmploye。

这是我的代码:

new MethodNode(ASM7, access, name, desc, signature, exceptions) {
…
}

这是结果:

SELECT DISTINCT idEmploye, 
       COUNT(*) OVER(PARTITION BY LEFT(idEmploye,2) ORDER BY idEmploye) AS nbrProjet 
FROM RessourcesProjet;

这就是我想要的:

+-----------+-----------+
| idEmploye | nbrProjet |
|      1212 |         1 |
|      1876 |         2 |
|      2231 |         2 |
|      4354 |         1 |
+-----------+-----------+
4 rows in set (0.00 sec)

谢谢。

1 个答案:

答案 0 :(得分:1)

您可以将当前查询的结果集用作Derived Table;然后对其进行进一步过滤:

SELECT dt.* 
FROM 
(
  SELECT DISTINCT idEmploye, 
                  COUNT(*) OVER(PARTITION BY LEFT(idEmploye,2) 
                                ORDER BY idEmploye) AS nbrProjet 
  FROM RessourcesProjet
) AS dt 
WHERE dt.nbrProjet >= 2