SQL ET POSTGRE 5.38 Challenge 3 director

Troisième challenge de la formation PostgreSQL, axé sur la table des réalisateurs. Cet exercice mobilise les opérateurs vus jusqu'ici : SELECT, WHERE, IN, LIKE, BETWEEN et ORDER BY. L'objectif est de combiner plusieurs critères et de retourner les résultats dans un ordre précis.

Énoncé du challenge

Les exercices portent sur la table réalisateur qui contient nom, prénom, nationalité et date de naissance. Vous devrez écrire des requêtes qui filtrent les réalisateurs selon différents critères, parfois combinés, et qui présentent le résultat trié. Avant de regarder la solution, prenez 15 à 20 minutes pour tenter chaque requête.

Quelques rappels utiles pour ce challenge :

  • Les chaînes de caractères se mettent entre apostrophes simples : 'anglais'
  • Les dates respectent le format anglais AAAA-MM-JJ entre apostrophes
  • IN permet de tester une appartenance à une liste de valeurs
  • LIKE avec % et _ pour les motifs sur chaînes
  • BETWEEN pour les intervalles (dates ou nombres)
  • ORDER BY ASC ou DESC pour trier les résultats

L'astuce est de toujours commencer par un SELECT * FROM realisateur pour visualiser le contenu de la table, repérer les colonnes utiles et la casse exacte des valeurs (majuscules ou minuscules). Cela vous évite les erreurs de typage et les requêtes qui retournent zéro résultat à cause d'une différence de casse.

Mettez la vidéo en pause, ouvrez votre éditeur SQL préféré et lancez-vous. La vidéo suivante présentera les solutions complètes avec les explications de chaque requête. Bon challenge !

Summary

This lesson covers solutions to three SQL/PostgreSQL challenges focusing on querying a film database. The instructor demonstrates filtering films by country origin, actors by name pattern and birth year range, and directors by nationality, using fundamental SQL techniques like IN clauses, wildcard pattern matching, and BETWEEN operators.

Key points

  • Use SELECT...FROM...WHERE...IN syntax to filter records by multiple values in a single column (e.g., films from USA, Spain, or Korea)
  • Combine LIKE operator with '%' wildcard and BETWEEN clause to filter actors by name pattern (starting with letter) and date range simultaneously
  • Query directors by filtering on the nationality column using IN clause with multiple country values; note uppercase sensitivity in database field values
  • The IN clause requires parentheses around the comma-separated list of filter values
  • Date values in SQL BETWEEN clauses follow the format YYYY-MM-DD or BETWEEN 'YYYY-MM-DD' AND 'YYYY-MM-DD'
  • Test queries systematically and verify results match the challenge requirements before moving forward

FAQ

How do I select records from multiple categories using one WHERE clause?

Use the IN operator with parentheses containing comma-separated values: WHERE country IN ('USA', 'Spain', 'Korea'). This is more efficient than using multiple OR conditions.

What is the syntax for finding names that start with a specific letter?

Use the LIKE operator with a wildcard: WHERE name LIKE 'M%' finds all names starting with uppercase M. The % represents zero or more characters after the letter.

How do I filter records within a date range?

Use the BETWEEN operator with date boundaries: WHERE birth_date BETWEEN '1940-01-01' AND '1969-12-31' to include all records between those dates inclusive.