您好我想排序表.The字段包含數字,字母和數字字母與IE,需要幫助的排序在mysql中
1 2 1a 11a a 6a b
我想這個排序來,
1 1a 2 6a 11a a b
我的代碼,
SELECT * FROM t
ORDER BY CAST(st AS SIGNED), st
但結果是,
a b 1 1a 2 6a 11a
我發現這個代碼在這個網址
" http://www.mpopp.net/2006/06/sorting-of-numeric-values-mixed-with-alphanumeric-values/ "請人幫我
首先檢查CAST是否返回。我認爲它會將st轉換爲數字。運行這個查詢:SELECT CAST(st AS SIGNED)FROM t – 2013-05-04 06:32:29
@ asim-ishaq它只返回數字。結果是1,12,11,6,1,2,0,0 – 2013-05-04 06:42:15
字母它會返回0,所以他們總是站在最前面。我們必須考慮一個不同的邏輯 – 2013-05-04 06:47:01