您所在的位置:网站首页> 新闻动态
关于网站建设中MYSQL和ORACLE中字符型字段(VARCHAR)排序问题
发布日期:2017-10-19 13:45:45

首先要说的是出现的问题:

比如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就没有这个顾虑了