ComeçarComece de graça

Reunindo tudo

Neste exercício, vamos usar as tabelas film e category para criar um novo campo chamado film_category, juntando a categoria name com o filme title. Você também vai praticar como cortar campos de texto, tipo a coluna description da tabela film, sem cortar uma palavra.

Para fazer isso, vamos usar a função ` REVERSE() para ajudar a determinar a posição do último caractere de espaço em branco na description ` antes de chegarmos a 50 caracteres. Essa técnica pode ser usada pra determinar a posição do último caractere que você quer cortar e garantir que ele tenha menos ou igual a 50 caracteres. O AND não corta uma palavra.

Essa é uma técnica avançada, mas sei que você consegue! Vamos lá.

Este exercício faz parte do curso

Funções para mexer nos dados no PostgreSQL

Ver curso

Instruções do exercício

  • Pega os primeiros 50 caracteres da coluna " description "
  • Descubra onde fica o último espaço em branco da coluna truncada description e tire isso do número 50 como o segundo parâmetro na primeira função acima.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

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;
Editar e executar o código