1

使用此语句,我得到以下结果:

SELECT Employee.Lastname, Employee.Firstnme, EMP_ACT.Projno
FROM Employee Join EMP_ACT 
On Employee.Empno = EMP_Act.Empno

结果:

HAAS            CHRISTINE    AD3100
PULASKI         EVA          AD3110
JEFFERSON       JAMES        AD3111
JEFFERSON       JAMES        AD3111
JEFFERSON       JAMES        AD3111
JEFFERSON       JAMES        AD3111
JEFFERSON       JAMES        AD3111

现在我只想显示存在 3 次或更多次的行。最后一列应显示 Projno 的数量。

例如:杰斐逊詹姆斯 5

我试过这样:

GROUP BY Projno HAVING COUNT(*) >= 3

但我总是出错:/

谢谢

4

1 回答 1

4

您希望按 select 语句中使用的所有非聚合列进行分组。

SELECT Employee.Lastname, Employee.Firstnme, EMP_ACT.Projno, COUNT(*)
    FROM Employee 
        Join EMP_ACT 
            On Employee.Empno = EMP_Act.Empno
    GROUP BY Employee.Lastname, Employee.Firstnme, EMP_ACT.Projno
    HAVING COUNT(*) >= 3
于 2012-04-23T18:15:05.920 回答