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
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;