SQL排序顺序异常

问题描述:首先按照id排序查看,发现顺序异常。如下图所示:

select * from DM_TEST order by id;

 

 

问题分析:这是id是字符串类型导致的。字符串是按照他们在字典中的顺序决定的。从前到后依次比较。

解决方法:将位数不一致的前面补零即可。如果位数是三位或以上(同样补零处理即可)或者是把ID类型修改成NUMBER类型即可。

--设置ID为一位的前面补一个零

update DM_TEST set id = '0'||id where length(id) = 1;

 

 

分享一个小日常0.0

 

posted on 2019-09-09 09:23  走-走  阅读(928)  评论(0编辑  收藏  举报