首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >计数多列不同值的出现次数

计数多列不同值的出现次数
EN

Stack Overflow用户
提问于 2015-05-01 12:01:26
回答 1查看 805关注 0票数 1

我试图找到一个MySQL查询,该查询将在特定字段中查找不同的值,计数该值的出现次数,然后对结果进行排序。

我知道如何用一行(只有name1)来完成这个任务:

代码语言:javascript
复制
SELECT name1, COUNT( * ) AS count
FROM table
GROUP BY name1
ORDER BY `count` ASC

这是可能的两个或更多的行,或我需要到前面的quere多次?

示例:

代码语言:javascript
复制
    id         name1        name2
    -----      ------       ------
    1          Mark         Paul
    2          Mike         John
    3          Paul         Mike
    4          Cleo         Bert
    5          Mike         Cleo
    6          John         Mark
    7          Mark         Cleo

结果:

代码语言:javascript
复制
    names      count1       count2
    ------     -------      ------
    Bert       0            1
    Cleo       1            2
    john       1            1
    Mark       2            1
    Mike       2            1
    Paul       1            1
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-01 12:03:13

代码语言:javascript
复制
SELECT name1, COALESCE(sum(count1),0) as count1, COALESCE(sum(count2),0) as count2
FROM 
(
   select name1, count(*) as count1, null as count2 from your_table group by name1
   union all 
   select name2, null, count(*) from your_table group by name2
) tmp
GROUP BY name1
ORDER BY name1 ASC
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29986466

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档