You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用SQL统计多列中相同数据的出现次数

统计多列中数据的出现次数

源数据表

op0op1op2op3op4op5
230927999738
2330012338612367319999
23092330018931
233001236731
2309233001279227999999
232233001
23092330012799
2330012338612367319999

需求

统计上述表格中所有op0至op5列里各数据的出现次数,得到如下统计结果:

预期统计结果

all opcount
23094
2321
2330017
2338612
2367313
27921
27993
89311
97381
99993

实现SQL语句

SELECT op_value AS `all op`, COUNT(*) AS count
FROM (
    SELECT op0 AS op_value FROM your_table_name
    UNION ALL
    SELECT op1 AS op_value FROM your_table_name
    UNION ALL
    SELECT op2 AS op_value FROM your_table_name
    UNION ALL
    SELECT op3 AS op_value FROM your_table_name
    UNION ALL
    SELECT op4 AS op_value FROM your_table_name
    UNION ALL
    SELECT op5 AS op_value FROM your_table_name
) AS unpivoted
WHERE op_value IS NOT NULL AND op_value != ''
GROUP BY op_value
ORDER BY op_value;

说明

  • 用UNION ALL将所有op列的行数据垂直拼接成单列,避免UNION自动去重导致统计错误
  • 过滤空值(包括NULL和空字符串),确保统计有效数据
  • 对拼接后的单列数据分组统计次数,最后按数据值排序

内容的提问来源于stack exchange,提问作者Iearth Nakub

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 19:28:19