通过升序订购MySQL表(数字)

时间:2013-06-06 09:52:44

标签: mysql sql

我想按升序排列est_dilt_pple表。

   pub_name                               est_dily_pple
    Jex Max Publication                         11530
    BPP Publication Mumbai                  123500    
    New Harrold Publication                     12563
    Ultra Press Inc.                            9500
    Mountain Publication                        9300
    Summer Night Publication                    53698
    Pieterson Grp. of Publishers                50000

我试过这个

SELECT * FROM publisher ORDER BY est_dily_pple ASC;

结果

pub_name                               est_dily_pple
Jex Max Publication                         11530
BPP Publication Mumbai                  123500
New Harrold Publication                     12563
Pieterson Grp. of Publishers                50000    
Summer Night Publication                    53698
Mountain Publication                        9300
Ultra Press Inc.                            9500

问题

但它不是提升。 “123500”比所有更重要,它应该显示在底部。请帮助我!

2 个答案:

答案 0 :(得分:4)

看起来该列是text或varchar类型,具有字符串排序语义。

使它成为整数或数字类型,你会更好。

答案 1 :(得分:0)

最佳解决方案是使列est_dily_pple的数据类型为数字。或者你可以试试这个:

SELECT * FROM publisher ORDER BY CAST(est_dily_pple as SIGNED INTEGER) ASC