CommencerCommencer gratuitement

La mise en place de l'ensemble

Dans cet exercice, nous allons utiliser les tableaux film et category pour créer un nouveau champ appelé film_category en concaténant la catégorie name avec le film title. Vous apprendrez également à tronquer des champs de texte tels que la colonne description du tableau film sans couper un mot.

Pour ce faire, nous utiliserons la fonction REVERSE() pour nous aider à déterminer la position du dernier caractère d'espacement dans description avant d'atteindre 50 caractères. Cette technique permet de déterminer la position du dernier caractère à tronquer et de s'assurer qu'il est inférieur ou égal à 50 caractères. AND ne coupe pas un mot.

Il s'agit d'une technique avancée, mais je sais que vous pouvez y arriver ! Plongeons dans le vif du sujet.

Cet exercice fait partie du cours

Fonctions pour manipuler les données dans PostgreSQL

Afficher le cours

Instructions

  • Obtenez les 50 premiers caractères de la colonne description
  • Déterminez la position du dernier caractère d'espacement de la colonne tronquée description et soustrayez-le du nombre 50, qui est le deuxième paramètre de la première fonction ci-dessus.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

SELECT 
  UPPER(c.name) || ': ' || f.title AS film_category, 
  -- Truncate the description without cutting off a word
  ___(description, 50 - 
    -- Subtract the position of the first whitespace character
    ___(
      ' ' IN REVERSE(LEFT(description, 50))
    )
  ) 
FROM 
  film AS f 
  INNER JOIN film_category AS fc 
  	ON f.film_id = fc.film_id 
  INNER JOIN category AS c 
  	ON fc.category_id = c.category_id;
Modifier et exécuter le code