Requêtes SQL de base et méthode de test reviennent souvent en entretien technique. Voici quatre questions corrigées pour vérifier vos réflexes.
La table commandes contient les colonnes client et montant.
SELECT client, SUM(montant) FROM commandes GROUP BY client;
SUM additionne les montants, et GROUP BY produit une ligne par client.
À dire en entretien : SUM calcule la somme, et GROUP BY indique que je veux une ligne par client.
Un formulaire accepte un âge de 18 à 65 ans inclus.
17, 18, 65 et 66
Ces valeurs encadrent les deux limites, là où les erreurs de condition sont les plus fréquentes.
À dire en entretien : Je teste les valeurs limites, juste dedans et juste dehors, car c'est là que les erreurs de type « inférieur ou égal » apparaissent.
La table clients contient une colonne ville.
SELECT COUNT(*) FROM clients WHERE ville = 'Lyon';
WHERE filtre les lignes, puis COUNT(*) les compte.
À dire en entretien : COUNT compte les lignes et WHERE ne garde que celles dont la ville est Lyon.
Vous voulez lister tous les clients, y compris ceux qui n'ont jamais passé de commande.
SELECT c.nom, co.id FROM clients c LEFT JOIN commandes co ON co.client_id = c.id;
LEFT JOIN garde tous les clients. Les colonnes de commande sont NULL s'il n'y en a aucune.
À dire en entretien : LEFT JOIN conserve toutes les lignes de la table de gauche, ici les clients, même sans correspondance.