我想要得到最低的5個價格物品的平均值,按照附加的用戶名分組。但是,下面的查詢給出了每個用戶的平均價格(當然這是價格),但我只想返回一個答案。從MySQL表中選擇平均值與極限
SELECT AVG(price)
FROM table
WHERE price > '0' && item_id = '$id'
GROUP BY username
ORDER BY price ASC
LIMIT 5
我想要得到最低的5個價格物品的平均值,按照附加的用戶名分組。但是,下面的查詢給出了每個用戶的平均價格(當然這是價格),但我只想返回一個答案。從MySQL表中選擇平均值與極限
SELECT AVG(price)
FROM table
WHERE price > '0' && item_id = '$id'
GROUP BY username
ORDER BY price ASC
LIMIT 5
我覺得這是你追求的:
SELECT AVG(items.price)
FROM (SELECT t.price
FROM TABLE t
WHERE t.price > '0'
AND t.item_id = '$id'
ORDER BY t.price
LIMIT 5) items
它將返回5種最低價格的平均 - 一個答案。
+1很好的答案。並祝賀達到10k代表! – 2009-12-06 04:54:13
很好的答案! – 2014-07-06 23:10:23
祝賀達到160K +代表! – 2015-05-11 19:52:58
簡單的解決方案如下。
查詢:
SELECT AVG(Column_name)
FROM (SELECT Column_name
FROM Table
WHERE ColumnID < number[Limit you want])
我不明白你想要做什麼。你能給出一個示例表結構,一些示例數據和該數據的預期結果嗎? – 2009-12-06 04:45:32