Moyenne Sélectionnez de la table MySQL avec LIMIT
Question
Je suis en train de calculer la moyenne des plus bas 5 articles à prix, regroupés par le nom d'utilisateur qui leur sont rattachés. Toutefois, la requête ci-dessous donne le prix moyen pour chaque utilisateur (qui est bien sûr le prix), mais je veux juste une réponse fournie.
SELECT AVG(price)
FROM table
WHERE price > '0' && item_id = '$id'
GROUP BY username
ORDER BY price ASC
LIMIT 5
La solution
Je pense que c'est ce que vous êtes après:
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
Il retournera à la moyenne des 5 prix les plus bas -. Une seule réponse
Autres conseils
Une solution simple ci-dessous.
Requête:
SELECT AVG(Column_name)
FROM (SELECT Column_name
FROM Table
WHERE ColumnID < number[Limit you want] )
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow