mysql中对字符串排序

mysql中对字符串排序,字符串中有数字有汉字,想按数字的大小来进行排序。仅仅用order by排序,效果不是想要的。

1
SELECT * FROM zy_property ORDER BY sort;

排序效果如下:

 

 

 因为字符串排序是先比较字符串第一个字符的大小。而不是像int型比较整个数字的大小。要想用字符串数据排成整型排序的效果,可以采用如下三种方式:

 

SELECT * FROM zy_property ORDER BY sort+0;
SELECT * FROM zy_property ORDER BY sort*1;
SELECT * FROM zy_property ORDER BY CAST(sort AS DECIMAL);

效果图均为:

 

 

 记录下来,收获感比较强,积累成就感。

 

posted @   未来可期丶May  阅读(2132)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
Live2d Test Env
点击右上角即可分享
微信分享提示