在SQL中计数

时间:2012-10-28 12:28:42

标签: sql

AFDELING = DEPARTMENT。 MEDLEM =会员。我想查看每个部门的成员数量,显示部门名称,但我似乎无法让它工作。我得到的只是Personnr的重复。

SELECT AFDELING.afdnavn, MEDLEM.personnr, count(*)
FROM [dbo].[MEDLEM],[dbo].AFDELING
WHERE AFDELING.afdnr = MEDLEM.afdnr
GROUP BY AFDELING.afdnavn, MEDLEM.personnr
GO

使用的表:

AFDELING
Afdnr  (Primary Key)
Afdnavn
MEDLEM
Afdnr  (foreign key)
Personnr (foreign key)  (Primary key)

2 个答案:

答案 0 :(得分:1)

我认为你的错误是你按MEDLEM.personnr分组。您只需按AFDELING.afdnavn进行分组,然后执行count

select
    A.afdnavn,
    count(*) as number
from dbo.AFDELING as A
    inner join dbo.MEDLEM as M on M.afdnr = A.afdnr
group by A.afdnavn

答案 1 :(得分:0)

SELECT 
  AFDELING.afdnavn
  , COUNT(MEDLEM.personnr)
FROM
  dbo.AFDELING JOIN
    dbo.MEDLEM ON AFDELING.afdnr = MEDLEM.afdnr
GROUP BY
  AFDELING.afdnavn