Mysql 不重复地计算行数

Mysql 不重复地计算行数,mysql,sql,Mysql,Sql,我有一张这样的桌子 id_profile, id_user 1 , 5 1 , 4 1 , 4 1 , 4 2 , 1 2 , 5 2 , 2 我正在尝试计算id_用户,但我必须消除重复项。所以,我想要一个这样的结果 id_profile, count 1 , 2 2 , 3 有什么建议吗?做一个分组,使用countdistinct: select

我有一张这样的桌子

id_profile, id_user
1         , 5
1         , 4
1         , 4
1         , 4
2         , 1
2         , 5
2         , 2
我正在尝试计算id_用户,但我必须消除重复项。所以,我想要一个这样的结果

id_profile, count
1         , 2
2         , 3

有什么建议吗?

做一个
分组,使用
countdistinct

select id_profile, count(distinct id_user) as count
from tablename
group by id_profile

分组,使用计数不同的:

select id_profile, count(distinct id_user) as count
from tablename
group by id_profile

您可以使用子查询筛选不同的值,然后使用count、group by,如果这更容易理解的话

SELECT id_profile, COUNT(id_user)
    FROM(SELECT DISTINCT id_profile,id_user FROM tablename)
    GROUP BY id_profile

您可以使用子查询筛选不同的值,然后使用count、group by,如果这更容易理解的话

SELECT id_profile, COUNT(id_user)
    FROM(SELECT DISTINCT id_profile,id_user FROM tablename)
    GROUP BY id_profile

非常感谢非常非常感谢