2013-11-15 79 views
0

無法提出一個查詢,允許我從一個表中選擇N個產品,平均價格爲X數量並且限制爲Y數量行。MySQL SELECT語句從產品中選擇N行,其中平均價格爲X

IE。選擇1000種產品,其中平均價格爲90.00

SELECT * 
FROM ProductList 
WHERE Price = [something something something based on AVG price LIMIT 1000] 

表產品並不是很大,所以具有多個子查詢或函數或存儲過程是不是一個問題

甚至可以創建一個新表,將有產品ID加入爲選擇

+1

您的「平均價格」是所有產品價格的平均值嗎?或者產品有多個價格?如果前者,你是在尋找具有確切平均價格的產品,還是在某個「範圍」內? – AllenG

+0

所有要選擇的產品的實際平均值,其中1000件平均價格爲90.00的產品應該選擇1000件產品,其平均值在所有選定的條目中平均合計爲90.00 –

回答

0

你的意思是這樣的?

select 
* 
from 
ProductList 
where price = (select avg(price) from productlist) 
+0

這將查找平均價格並嘗試選擇產品如果價格等於平均價格,則另外 - 該查詢不考慮N個項目的兩個變量或X個平均價格 –

相關問題