您现在的位置是:主页 > 电脑技术文章 > 服务器技术 > 如何对Mysql数据库中的字符串数值进行排序

如何对Mysql数据库中的字符串数值进行排序

时间:2022-05-21 21:50  来源:08绿软站  阅读次数: 分享复制 评论打赏

最近在做项目的时候遇到个问题,就是在对mysql数据库中的数据进行查询时,要用String类型(字符型)的ID进行一下排序!(注:ID字段为 varchar 类型)。今天笔者就跟大家分享一下如何对Mysql数据库中的字符串数值进行排序的问题,希望能够帮助到各位。

方法一:字段*1或者+0
 
将字段*1或者+0可以将MySQL字符串字段按数值排序
 
select * from table where 1=1   order by id*1 desc;
 
或者
 
select * from table where 1=1  order by id+0 desc;
 
其实就是把字段当作一个int的类型处理。
 
方法二:使用MySQL绝对值函数ABS
 
使用MySQL绝对值函数ABS,它告诉MySQL使用绝对值来处理处理这个字段:
 
ORDER BY ABS(`id`)
 
方法三:采用MySQL的cast函数,转换字段格式
 
这里我们将id(注:ID字段为 varchar 类型)字段转换成数值类型的字段DECIMAL,然后再进行排序:
 
ORDER BY CAST(`id` AS DECIMAL)
 
需要注意的是,你所要排序的id字段的值必须都是可转换成数字,否则将会出错。
文章评论
伤不起,不评论了!