Vous pouvez utiliser Case .. When
pour vérifier si points
sont supérieurs à 10 pour une ligne particulière et comptez-les en conséquence (en utilisant Sum()
).
SELECT COUNT(*) as total,
SUM(CASE WHEN points > 10 THEN 1 ELSE 0 END) AS winners,
team
FROM users
GROUP BY team
Dans MySQL, nous pouvons le raccourcir davantage comme Sum()
la fonction peut simplement convertir les résultats des opérateurs/fonctions conditionnels en 0/1 (pour faux/vrai respectivement) :
SELECT COUNT(*) as total,
SUM(points > 10) AS winners,
team
FROM users
GROUP BY team