mysql按数字大小排序函数_SQL里的查询结果怎么才能按照中文数字大小排序?

你的位置:

问答吧

-> 数据库

-> 问题详情

SQL里的查询结果怎么才能按照中文数字大小排序?

有一个字段jb的内容是:

一级

二级

三级

四级

五级

六级

这样的。

我想在查询的结果中按照级别从小到大的顺序排序,但是如果简单的用order by jb,那么得到的顺序就是:二级,六级,三级,四级,五级,一级这个顺序,是按汉字的拼音首字母排的。

我要怎么才能实现按照数字的大小排呢?

作者: victorlynn

发布时间: 2008-09-25

把级去了,转成ascii码,除了十以上的,应该可以排。。。。。再简单点,建个对应表。。。再再简单点。。。存数字。

作者: caldson

发布时间: 2008-09-25

表里再加个排序的字段

作者: honghu3000

发布时间: 2008-09-25

数据库已经在使用中了,不好修改数据库结构和改动里面的数据。

最好是能用技术手段来排序,不修改数据库结构和修改内容就实现排序,不知道有没有可行的方法?

作者: victorlynn

发布时间: 2008-09-25

增加一个字段jborder,利用程序根据jb字段来进行转换

比如一级jborder就是1,二级就是2......

这个程序总是容易实现的吧?解决。

作者: 子心

发布时间: 2008-09-25

你们搞清楚一点呀,过程要说清楚一点

作者: shchzh85

发布时间: 2008-09-25

楼主先说一下 超过20 的 怎么 写的?

作者: playboy2925

发布时间: 2008-09-26

用个自定义函数,然后 order by 我的函数(jb),这个函数里判断 ,返回,1,2,3,4,5,6

作者: omeweb

发布时间: 2008-09-27

看了楼主的要求,我也有个想法:

如何使SQL查询出来的结果按照壹,贰,叁。。。来排序?

如何使SQL查询出来的结果按照笔画数来排序?

数据库合理的设计才是解决此类问题的正道和首选方法,自找麻烦没意思!

作者: fonqing

发布时间: 2008-09-27

如果jb是固定的几个选项,如:一级 二级 三级 四级 五级 六级

可以使用

mssql:charindex

mysql:instr

===========================================

以mssql为例

select * from 表

order by charindex(jb,'一级,二级,三级,四级,五级,六级')

作者: EpsiLonLink

发布时间: 2008-09-28

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值