2014-09-06 64 views
1

我想顯示dishnamedishpriceDISTINCT值第二高的dishprice帶有DISTINCT關鍵字的查詢有什麼問題?

以下查詢有什麼問題?

SELECT dishName, DISTINCT(dishPrice) FROM `tblDish` ORDER BY dishPrice LIMIT 1,1 
+0

問題是您希望獲取的設置未正確定義。 – 2014-09-06 17:00:11

+0

需要按降序排序,但DISTINCT的明顯含義在問題 – Gaurav 2014-09-06 17:01:08

+0

中尚不明確,那麼如何聲明它...可以請您給出正確的查詢嗎? – gopigoppu 2014-09-06 17:02:57

回答

3

如果有更多的則同樣的價格一個記錄,則需要將它們分組再見價格和組CONCAT所有記錄

SELECT GROUP_CONCAT(dishName), dishPrice FROM `tblDish` GROUP BY dishPrice ORDER BY dishPrice DESC LIMIT 1,1 
1

做這樣的

SELECT DISTINCT(dishPrice), dishName FROM `tblDish` GROUP BY `dishPrice` ORDER BY `dishPrice` LIMIT 1,1 

你在選擇表格中的任何其他列之前,應始終提及Distinction

+1

使用反引號代替'dishPrice'的引號 – Gaurav 2014-09-06 17:15:38

1

使用GROUP BY機智h查詢。所以,你可以列出和區分他們的類別。