mysql排序失效问题的解决
问题

可以看到sql语句是没有问题的,但是排序缺出现问题

发现这个字段是varchar类型。不能直接排序
解决:
在不修改原有设计的情况下,只能改SQL了,我们需要先把字符串转数字。
字符串转数字的三种方式:
(1)+0
order by (serial_number+0) desc
(2)用函数CAST(value as type)或CONVERT(value, type)
type可为DECIMAL (浮点数 )、SIGNED(整数)、UNSIGNED (无符号整数 )
order by CAST(serial_number as SIGNED) desc

order by CONVERT(serial_number,SIGNED) desc

到此这篇关于mysql排序失效问题的解决的文章就介绍到这了,更多相关mysql 排序失效内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
ERROR 1406 : Data too long for column 解决办法
导入数据的时候,mysql报错 ERROR 1406 : Data too long for column Data too long for column2011-04-04
解决MySQL5.1安装时出现Cannot create windows service for mysql.error
这篇文章主要介绍了解决MySQL5.1安装时出现Cannot create windows service for mysql.error:0问题的方法2016-06-06
深入理解mysql SET NAMES和mysql(i)_set_charset的区别
最近公司组织了个PHP安全编程的培训, 其中涉及到一部分关于Mysql的 SET NAMES 和mysql_set_charset (mysqli_set_charset)的内容2012-01-01
MySQL数据时区问题以及datetime和timestamp类型存储的差异
这篇文章主要介绍了MySQL数据时区问题以及datetime和timestamp类型存储的差异,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2023-11-11


最新评论