ITPub博客

首页 > 数据库 > Oracle > 字符串类型数字order by

字符串类型数字order by

原创 Oracle 作者:tolilong 时间:2016-02-15 14:27:40 0 删除 编辑
SQL> drop table tt purge;


表已删除。


SQL> create table tt(id varchar2(20));


表已创建。


SQL> insert into tt values('1');


已创建 1 行。


SQL> insert into tt values('40');


已创建 1 行。


SQL> insert into tt values('5');


已创建 1 行。


SQL> insert into tt values('9');


已创建 1 行。


SQL> commit;


提交完成。


SQL> select * from tt order by id;


ID
----------------------------------------
1
40
5
9

原因为ID的类型为字符串,导致排序出现异常,order by to_number(id)则正常
SQL> select * from tt order by to_number(id);


ID
----------------------------------------
1
5
9
40

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24237320/viewspace-1989011/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-07-13

  • 博文量
    406
  • 访问量
    1004359