我有这个
m_id p_id
112 8
340 8
928 16
190 16
290 16
... etc
我如何得到这个?
p_id count(p_id)
8 2
16 3
我很困惑,因为我还想确保它在计算p_id,同时保持m_id值不同。
请帮助,谢谢你:)
答案 0 :(得分:1)
示例数据
CREATE TABLE #temp
(
m_id INT, p_id INT
);
INSERT INTO #temp
VALUES
(112, 8
),
(340, 8
),
(928, 16
),
(190, 16
),
(290, 16
);
查询:
SELECT p_id, COUNT(*) [count(p_id)]
FROM #temp
GROUP BY p_id;
答案 1 :(得分:1)
我相信你想要这样的东西:
SELECT p_id, count(distinct m_id) from myTable group by p_id;
如果您想计算与每个p_id相关联的不同m_id的数量,那么如果您只想计算表中p_id的数量,请删除 distinct 关键字。