mysql - Mysql:通过不同的值循环创建具有各种选择的过程
问题描述
我有一张这样的桌子
TIME |STRCOUNTRY |STROPERATOR | NINCOMINGCALLS
300718|RUSSIA |MTS | 2
300718|RUSSIA |Megafon | 3
300718|UK |Vodafone | 1
300718|UK |UKTele | 3
这是我要展示的结尾:呼叫运营商,按国家/地区汇总所有运营商
RUSSIA |Megafon | 3
RUSSIA |MTS | 2
RUSSIA |# | 5
UK |Vodafone| 1
UK |UKTele | 3
UK |# | 4
# | # | 9
可以通过这样的查询接收
select * from TM_COMMON_STAT where strCountry = "RUSSIA" and TIME = "300718"
UNION
select STRCOUNTRY, '#' as STROPERATOR, SUM(NINCOMINGCALLS) as 'NINCOMINGCALLS' from TM_COMMON_STAT where strCountry = "RUSSIA" and TIME = "300718"
如何获得表中所有运算符的输出(不同的 STRCOUNTRY + STROPERATOR)并最终获得所有国家/地区的最终总和(其中运算符 = #)?
谢谢您的帮助。
解决方案
尝试这个
SELECT STRCOUNTRY, STROPERATOR, SUM(NINCOMINGCALLS) NINCOMINGCALLS
FROM TM_COMMON_STAT
WHERE <<<whatever filters you require >>>
GROUP BY STRCOUNTRY, STROPERATOR WITH ROLLUP
推荐阅读
- sparql - 有没有办法在 SPARQLWrapper 中获取错误代码?
- html - 输入类型=时间不适用于 min 和 max 属性
- python - UnboundLocalError:在discord.py中分配之前引用了局部变量'member_id'
- javascript - 如何在反应钩子数组中获取其对象的值?
- python - 读取 csv 文件时 Kaggle 中的错误消息
- keras - 如何在单个代码中使用 3 个不同版本的 keras?
- angular - 如何访问在父模块中声明的组件
- javascript - 如何使用函数 reverseArray 反转数组
- python - 值错误:对已关闭文件的 I/O 操作
- javascript - 升级 .then .catch 到 async await 并尝试 catch