如何排序數據而不是按字典順序排列這些數據?mysql與數字排序varchar
100_10A
100_10B
100_10C
100_11A
100_11B
100_11C
100_12A
100_12B
100_12C
100_13A
100_13B
100_13C
100_14A
100_14B
100_14C
100_15A
100_15B
100_15C
100_16A
100_16B
100_16C
100_1A
100_1B
100_1C
100_2A
100_2B
100_2C
100_3A
100_3B
100_3C
100_4A
100_4B
100_4C
100_5A
100_5B
100_5C
100_6A
100_6B
100_6C
100_7A
100_7B
100_7C
100_8A
100_8B
100_8C
100_9A
100_9B
100_9C
select generalcolum from mytable order by blockid, plotid ASC
我需要出這種順序是
100_1A
100_1B
100_1C...
...
...
100_10A
100_10B
100_10C
我需要以某種方式做的是增加了一個零的那種情況,這樣,我可以讓他們在訂貨之前我想要。
有兩個colums,一個存儲100(下劃線之前的數字)和一個存儲下劃線之後的值1A。
我須藤廢話選擇
select thiscolum this table
order by blockid, plotid(+1 zero to prefix if len(plotid) < 2)
例如,如果情節值是1A,做最好的排序,我需要它被看作是01A,這樣說到10A之前。
在寫一個問題時,請考慮一下如何在首頁顯示前兩行時出現問題。把最重要的事情放在第一位。在你的問題中包括一些測試數據是好的,但把它放在最後。 – 2010-12-13 21:04:45
什麼是前綴「100_」?它會改變嗎? – Flinsch 2010-12-13 21:05:03
前綴100可以改變記錄,同樣它可能包含99的值。在那裏我也想用前導零作爲它的前綴,如果它的長度不是3的話。 – 2010-12-13 21:12:16