mysql - 将 COUNT 与 CASE 一起使用,如何对结果列进行排序?
问题描述
我有以下代码:
SELECT COUNT(CASE WHEN Title LIKE '%Superintendent%' THEN 1 END) AS 'Bob',
COUNT(CASE WHEN Title LIKE '%Machine%' THEN 1 END) AS 'Control',
COUNT(CASE WHEN Title LIKE '%Estimator%' THEN 1 END) AS 'Estimator'
FROM pants;
当前结果如下所示:
Bob Control Estimator
230 550 1243
相反,我希望查询的结果视图具有降序排列的列:Estimator --> Control --> Bob
解决方案
不建议动态地弄乱结果集中列的顺序。相反,查询应该有一个具有高度可预测(理想情况下是静态)列集的结果集。
我建议对列重新排序是在数据库返回结果集之后呈现该结果集的工作。
推荐阅读
- node.js - JSON Parse 错误:尝试更改值时发生意外的 EOF
- reactjs - 加载包含 jwt-token 的html
- android - 在 Intent 中设置类型以启动 Activity
- android - 仅编辑edittext android中的特定内容
- redirect - 如何让谷歌搜索显示新域而不是旧域?
- django - 即使所有设置都很好,Django也无法加载静态文件
- java - 需要使用任何java API从给定的数字列表中随机生成每个值相同次数的数字
- java - 使用java的条形图
- laravel - Turbolink 在 Livewire 版本 2 中不工作
- java - 当我执行 mvn package 时,spring-boot-configuration-processor.jar 不会被打包。