CodeGym /Cursos /SQL SELF /Formatação de dados

Formatação de dados

SQL SELF
Nível 5 , Lição 0
Disponível

Bora começar com uma verdade meio óbvia, mas super importante: dados, por si só, geralmente são meio "crus". Um monte de número, data ou string jogado na sua cara é difícil de entender. Imagina um relatório onde as datas aparecem em formatos diferentes: uma tá tipo 01/02/2023 e outra 2023-02-01. Isso confunde até quem manja muito de análise. É aí que entra a mágica da formatação de dados.

Formatação de dados serve pra:

  • Transformar os dados num formato fácil de entender, o que deixa tudo mais simples de trabalhar.
  • Virar um hacker de dados, pegando rapidão só o que interessa.
  • Preparar os dados pra exportação ou integração com outros sistemas.
  • Deixar relatórios e visualizações legíveis e certeiros.

Imagina que tu trabalha numa universidade e precisa montar um relatório listando todos os estudantes com nome completo, data de nascimento e faculdade. Em vez de juntar tudo na mão, tu faz uma query formatando, que junta nome e sobrenome numa coluna só e mostra a data de nascimento de um jeito que todo mundo entende, tipo 12 de março de 2001.

Tarefas principais de formatação de dados

Formatação é tipo montar uma salada de frutas. Não é só jogar tudo na tigela, tem que cortar bonito e arrumar legal no prato. No SQL, isso se divide em alguns tipos de tarefa:

Formatação de strings

Pode ser juntar strings, mudar maiúsculas/minúsculas, tirar ou colocar espaços e caracteres.

Formatação de números

Às vezes é útil transformar número em string ou arredondar pra um certo número de casas decimais.

Trabalhando com datas e horários

Aqui dá pra automatizar coisas tipo pegar a data de hoje, formatar datas/horas ou extrair só uma parte da data (tipo só o ano ou só o mês).

Pegar valores únicos

Se teu relatório precisa mostrar só registros únicos (tipo cidades ou faculdades diferentes), isso também é formatação de dados.

Ferramentas de formatação no PostgreSQL

Pra mexer com dados, o PostgreSQL tem um monte de função pronta. Olha só um resumo do que a gente vai ver nas próximas aulas:

Formatação de strings

  • CONCAT(): junta strings.
  • UPPER(), LOWER(): muda o texto pra maiúsculo ou minúsculo.

Formatação de datas e horários

  • NOW(): data e hora atual.
  • CURRENT_DATE: só a data de hoje (sem hora).
  • DATE_PART(): pega partes da data, tipo ano ou mês.

Conversão de tipos

  • CAST(): muda o tipo do dado.
  • Sintaxe: <valor>::<tipo>.

Ordenação de dados

  • ORDER BY: ordena os dados por uma ou mais colunas.
  • DISTINCT: pega só valores únicos.

Exemplo de formatação de dados: como fica na prática?

Pra te animar, bora ver uns exemplos. Começando pelo básico.

Exemplo 1: Formatação de string

SELECT CONCAT(first_name, ' ', last_name) AS full_name
FROM students;

Essa query junta first_name e last_name numa coluna só chamada full_name. Tipo, se o nome do estudante é "Otto" e o sobrenome é "Art", o resultado vai ser: "Otto Art".

Exemplo 2: Formatação de data

SELECT DATE_PART('year', date_of_birth) AS birth_year
FROM students;

Aqui a gente pega só o ano de nascimento da coluna date_of_birth. Se a data de nascimento no banco for 2001-03-15, o resultado vai ser 2001.

Exemplo 3: Conversão de tipos

SELECT birth_year::text || ' ano' AS formatted_year
FROM (
  SELECT DATE_PART('year', date_of_birth) AS birth_year
  FROM students
) subquery;

Nessa query, primeiro a gente pega o ano de nascimento, depois transforma em string e ainda cola o texto " ano". Por exemplo, o resultado vai ser: 2001 ano.

Onde isso é usado?

Relatórios pra gerentes

Nem todo mundo quer ver dado "cru". Tipo, num relatório de faturamento da empresa, é melhor mostrar os valores com separador de milhar (1,000,000 em vez de 1000000), e datas no formato 21 FEV 2025.

Relatórios pra clientes

Tipo, um e-mail pro cliente dizendo: "Prezado [Nome Sobrenome], seu pedido N123 foi entregue com sucesso em 12 de outubro de 2023".

Integração com outros sistemas

Alguns formulários exigem um formato específico: datas no padrão ISO, strings com o case certo, números arredondados.

Análise e visualização

Imagina que tu vai montar gráficos ou diagramas. Sem formatação, eles podem ficar bem estranhos.

Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION