JOIN
SELECT c.nom, co.montant
FROM commandes co
JOIN clients c ON c.id = co.client_id; -- INNER JOIN : seulement les correspondances
SELECT c.nom
FROM clients c
LEFT JOIN commandes co ON co.client_id = c.id
WHERE co.id IS NULL; -- clients sans commande
GROUP BY
SELECT c.ville, COUNT(*) AS nb, SUM(co.montant) AS total
FROM commandes co JOIN clients c ON c.id = co.client_id
GROUP BY c.ville
HAVING total > 100
ORDER BY total DESC;Toute colonne du SELECT doit être dans le GROUP BY ou dans une fonction d'agrégat. Bases : SELECT et WHERE.