1. Apprendre
  2. /
  3. Cours
  4. /
  5. Manipulation de données en SQL

Connected

Exercice

Filtrer votre instruction CASE

Générons une liste des matchs remportés par l'équipe Bologna d'Italie! Les deux tables contiennent plusieurs autres équipes; pour créer une requête vraiment utile, l'élément clé sera d'utiliser votre instruction CASE comme filtre dans la clause WHERE.

Les instructions CASE vous permettent de catégoriser les données qui vous intéressent — et d'exclure celles qui ne vous intéressent pas. Pour ce faire, vous pouvez utiliser une instruction CASE comme filtre dans la clause WHERE afin de retirer les résultats que vous ne voulez pas voir.

Voici comment vous pourriez configurer le tout :

SELECT *
FROM table
WHERE 
    CASE WHEN a > 5 THEN 'Keep'
         WHEN a <= 5 THEN 'Exclude' END = 'Keep';

Essentiellement, vous pouvez utiliser l'instruction CASE comme une colonne de filtrage, comme n'importe quelle autre colonne de votre base de données. La seule différence, c'est que vous ne donnez pas d'alias à l'instruction dans WHERE.

Instructions

100 XP
  • Utilisez l'instruction CASE dans la clause WHERE pour filtrer les lignes où hometeam_id est 9857 et où les buts à domicile sont supérieurs aux buts à l'extérieur.
  • Utilisez l'instruction CASE dans la clause WHERE pour filtrer les lignes où awayteam_id est 9857 et où les buts à l'extérieur sont supérieurs aux buts à domicile.
  • Terminez l'instruction CASE en excluant les matchs que Bologne n'a pas gagnés.