2013-10-14 70 views
0

我有一張桌子,我想根據這張桌子做出一張圖。應該怎樣做才能做到這一點。如何從mysql表中獲得前5名的金額?

目前我想要這個表中的前5個數量;這張表有大約8000條記錄。將返回前5個數量的查詢是什麼。

這是表

enter image description here 同時推薦 什麼應該是返回兩個值,使圖表,從這個表中可能出現的問題。

**對不起我有背後的原因**

MySQL是讀取列金額作爲一個字符串值,由於$簽署裏面....

回答

1
SELECT code, amount FROM table WHERE id > 1 ORDER BY amount DESC LIMIT 0, 5; 

它將返回有序線按數量可以存儲在數組中。升序使用ASC而不是DESC。爲什麼第一行包含不應該在那裏的東西?

+0

這是有幫助的 –

+0

我沒有測試它,但它應該工作。 –

0

你也可以做

SELECT top 5 code, amount FROM table WHERE id > 1 ORDER BY amount DESC 

這將產生相同的結果。

+0

#1064 - 您的SQL語法錯誤;檢查與您的MySQL服務器版本相對應的手冊,以便在'1代碼,數量從test_table WHERE id> 1 ORDER BY amount DESC LIMIT 0,30'在第1行附近使用正確的語法 –

0
select code, 
     amount 
    from table_name 
where amount in 
     (select distinct amount 
      from table_name 
     order by amount desc limit 5) 
order by amount desc; 

這會給前五名金額(而不是5行) 在MySQL「TOP」關鍵詞是不是有