首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MYSQL计数结果的自定义排序顺序?

MYSQL计数结果的自定义排序顺序?
EN

Stack Overflow用户
提问于 2016-01-09 07:46:45
回答 1查看 78关注 0票数 0

我试着用谷歌表格写一份关于我收集的数据的报告。每个人都被问到他们衣橱里有多少件物品。我想将这些数据作为总数中有多少属于每个范围的一个计数。因此,我使用这个mysql查询来计算每个答案的实例:

代码语言:javascript
运行
复制
SELECT  `Closet` , COUNT( * ) FROM  `TABLE 1` GROUP BY  `Closet`

下面是得到的数据:

代码语言:javascript
运行
复制
Closet  | COUNT( * )
--------+------------
0       | 8
1-5     | 124
101-200 | 7
11-20   | 181
201-300 | 3
21-50   | 171
51-100  | 48
6-10    | 156

问题是,按照字母顺序,101-200项排序在6-10项之前。基本上,我想用某种方式对此进行排序,将数字范围按逻辑顺序排列。(1-5、6-10、11-20等)

我怎样才能做到这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-09 07:53:11

您必须使用convert & substring_index

代码语言:javascript
运行
复制
SELECT `Closet` , COUNT( * ) FROM `TABLE 1` GROUP BY `Closet` order by convert(substring_index(Closet,'-',1), unsigned integer) 

这将通过获取范围的第一个数字来排序Closet,这应该是完成这项工作的主要方法。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34691037

复制
相关文章

相似问题

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