2011-10-17 29 views
0

我想知道如果有一種方法可以在數字是字符串時進行數字排序。看看例子:將數值排序爲MySQL中的字符串

查詢:

SELECT * FROM t_tables牛逼爲了通過ID_STRING ASC

這是從數據庫列表:

13 
4 
6 
8 
10 
1 
3 
2 
5 
12 
7 
9 
11 

我需要以這種方式提取:

1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 

但作爲結果,我得到這個:

1 
10 
11 
12 
13 
2 
3 
4 
5 
6 
7 
8 
9 

回答

2

如果你知道,你總是有列,你可以使用CAST()操作數值。也看看這個question

SELECT * FROM t_tables t ORDER BY CAST(id_string AS UNSIGNED) ASC 
+0

謝謝你,可以完美運行 – Denees

1

希望它能幫助:

SELECT * FROM t_tables t order by cast(id_string as unsigned) 
2
SELECT * FROM t_tables t order by cast(id_string as signed integer) asc;