2013-11-15 91 views
3
SELECT * FROM highscore ORDER BY score 

此代碼總是將我的值從低到高排序,但我希望它們從最高到最低。sql order by從最高到最低值

其實我有兩組數據在我的表,我總是得到

0 
235235 

,但我需要的是這樣的:

235235 
0 

我已經嘗試過

SELECT * FROM highscore ORDER BY CAST(score AS int) 

,但這給了我一個語法錯誤(「你的SQL語法有錯誤;檢查與你的MySQL服務器版本對應的手冊sion在第1行「INT」附近使用正確的語法))

我的表中得分設置爲int(100)。有沒有人有解決方案,我怎麼可以這樣排序?永遠不會有負值或非整數值。

回答

13

你必須使用

SELECT * FROM highscore ORDER BY score DESC 

也存在

SELECT * FROM highscore ORDER BY score ASC 

,但是這是默認的行爲。

+1

ASC =升序,DESC =降序以防OP沒有意識到這一點。 – Dismissile