CAST e ::

Converta um valor para outro tipo de dado.

Sintaxe

CAST(value AS type)
value::type
  • A forma :: é exclusiva do PostgreSQL. CAST funciona em todos os bancos de dados.

Exemplo

SELECT name, CAST(unit_price AS integer) AS whole_price FROM products ORDER BY product_id;

Preços arredondados para números inteiros.

Tabelas usadas: products. Experimente em uma lição abaixo.

Erros comuns

  • Converter um decimal para inteiro arredonda; não trunca.
  • Inteiro dividido por inteiro é um inteiro no PostgreSQL: 7 / 2 é 3. Converta um dos lados para numeric para obter 3.5.

Pratique