web-dev-qa-db-fra.com

sélectionnez max () dans count ()

Duplicata possible:
chaque table dérivée doit avoir son propre alias

J'ai besoin de trouver le maximum d'actions par utilisateur

colonnes de table: action_id, action_status, user

demande:

SELECT MAX(`counted`) FROM
(
SELECT COUNT(*) AS `counted`
FROM `table_actions`
WHERE `status` = "good"
GROUP BY `user`
)

message d'erreur: "Chaque table dérivée doit avoir son propre alias"

qu'est-ce qui ne va pas?..

20
Zdomb

Cela signifie simplement que MySQL insiste pour que vous donniez un nom à SELECT intérieur, comme:

SELECT MAX(counted) FROM
(
    SELECT COUNT(*) AS counted
    FROM table_actions
    WHERE status = "good"
    GROUP BY user
) AS counts;
26
Michael Slade