SQL ET POSTGRE 5.33 Challenge 2 : The selection queries

C'est l'heure du deuxième challenge sur les requêtes de sélection en PostgreSQL. Cet exercice vous permet de combiner les opérateurs IN, LIKE et BETWEEN vus dans les vidéos précédentes. Avant de regarder la vidéo solution, prenez le temps de tenter chaque exercice par vous-même : c'est en pratiquant que les requêtes deviennent naturelles.

Les trois exercices à réaliser

Le premier exercice demande de sélectionner le titre et le pays des films dont le pays d'origine est les États-Unis, l'Espagne ou la Corée. Attention : dans cette table, la Corée s'écrit Korean. C'est typiquement un cas où l'opérateur IN avec une liste de valeurs entre parenthèses est plus élégant qu'une succession de conditions OR.

Le deuxième exercice combine deux opérateurs. Vous devez sélectionner le nom et le prénom des acteurs dont le nom commence par la lettre M et qui sont nés entre le 1er janvier 1940 et le 31 décembre 1969. Cela nécessite LIKE pour le motif sur le nom et BETWEEN pour l'intervalle de dates, le tout reliés par AND :

  • LIKE 'M%' pour cibler les noms commençant par M
  • BETWEEN '1940-01-01' AND '1969-12-31' pour l'intervalle de dates
  • AND pour combiner les deux conditions

Le troisième exercice consiste à sélectionner le nom et le prénom des réalisateurs dont la nationalité est chinois, brésilien ou anglais. Attention aux majuscules : les valeurs sont stockées telles quelles dans la table. C'est à nouveau un cas d'usage idéal pour IN.

Mettez la vidéo en pause, ouvrez votre éditeur SQL et tentez les trois requêtes. La vidéo suivante présentera les solutions détaillées avec les explications. Bon challenge !

Summary

This SQL challenge focuses on writing SELECT queries with multiple filtering conditions across different tables. Learners must extract specific columns (titles, countries, actor names, director names) using WHERE clauses with IN operators for multiple values, LIKE patterns for name matching, and BETWEEN for date range filtering. The challenge reinforces practical database querying skills by combining different WHERE clause techniques in three separate SELECT statements.

Key points

  • SELECT specific columns from tables (title, country, name, first_name) while filtering rows based on conditions
  • Use IN clause to filter records by multiple values (e.g., country IN ('United States', 'Spain', 'Korea'))
  • Apply LIKE operator for pattern matching (e.g., actor names starting with 'M')
  • Use BETWEEN operator to filter by date ranges (e.g., birth dates between 1940-01-01 and 1969-12-31)
  • Handle encoding/language differences in data (e.g., 'Korea' vs 'Korean' in English representations)
  • Combine multiple WHERE conditions using AND/OR logic for complex filtering

FAQ

What three queries does this challenge require?

First: select film titles and countries filtered by specific country origins (United States, Spain, Korea). Second: select actor names born between January 1, 1940 and December 31, 1969 whose names start with 'M'. Third: select director names with nationalities including Chinese, Brazilian, or English.

Which SQL operators and clauses are essential for this challenge?

SELECT (to specify columns), WHERE (for filtering), IN (for multiple values), LIKE (for pattern matching), and BETWEEN (for date range filtering). These operators combine to create complex filtering conditions.

What data format consideration is mentioned?

The challenge notes that Korea's origin in the database is written as 'Korean' in English format, requiring attention to how data is stored versus how it appears in human-readable form.