现在我正在尝试从mysql表中返回最大的COUNT(DISTINCT列)数。 这很难描述,所以我给你举个例子:
我的表格包含以下列:s_id,k_id,p_id。 现在我想计算不同的s,条件是每个条目也有相同的p_id。我需要这个来准备一个HTML表(所以我知道这个表将有多少列)。
数据示例:
到目前为止,这就是我所得到的:
SELECT COUNT(DISTINCT k_id) AS a FROM `table`
这个问题是,可能有4个不同的k_id,但其中3个与p_id = 1相关,最后一个与p_id = 2相关。 a返回4而不是3。
感谢您的支持!
答案 0 :(得分:1)
我想你想要这个:
select p_id, count(distinct s_id) as cnt
from table
group by p_id
order by cnt desc
limit 1;
答案 1 :(得分:0)
请考虑一下:
select max(count(distinct(k_id))) from table
group by p_id