上圖所示,明明是按照降序排列的,為什么會出現這種混亂的排序呢?
原因:STOREHOUSE_NO這個字段在數據庫中儲存的類型是VARCHAR,這種類型的字段,mysql在使用order by進行查詢時,是根據字符進行排序的,第一個字符大的在前面,依次類推,所以就會出現如上圖的排序。
解決:要想得到int類型的排序,執行如下sql語句
select es.STOREHOUSE_NO from ERP_STOREHOUSE es order by es.STOREHOUSE_NO+0 desc