首先要说的是出现的问题:
比如select * from table order by myChar,这其中myChar 是varchar类型,里面有很多数字,比如 01,02,3,4,5,101,102,等,这样如果要求按照数字大小排序肯定是不行的,那么如何解决呢?
在解决过程中发现MYSQL和ORACLE还真是不一样,关于这个问题MYSQL要简单很多:
1、MYSQL,这个就非常简单了:select * from table order by myChar+0,只需要这样就行了;
2、ORACLE也不复杂就是了,SELECT TO_NUMBER(MC) as szmc,mc from "test" order by szmc
但是需要注意的是ORACLE这里的TO_NUMBER函数只能转换数字类型的,如果字段里面包含字符,那是没有办法实现的,要提示错的,而MYSQL就没有这个顾虑了
扫一扫
加客服微信
服务热线
0514-87330378