Pesquisar este blog

Livros Recomendados

Mostrando postagens com marcador 2739. Mostrar todas as postagens
Mostrando postagens com marcador 2739. Mostrar todas as postagens

quinta-feira, 23 de julho de 2020

URI (BEECROWD) - 2739 - Dia de Pagamento - SQL - PostgreSQL

Chegando com mais um post sobre SQL! Utilizando PostgreSQL, resolvi o problema 27391 Veja a solução!

Antes de resolver qualquer problema de SQL do URI (BEECROWD agora), recomendamos seguir os seguintes passos:

  1. Ler todo enunciado do problema.
  2. Ler os tópicos do fórum em caso de dúvidas
  3. Preparar o esquema, conforme fornecido no problema. Obs.: muitas vezes o pessoal coloca o código de criação do esquema no fórum, então é só copiar!

Plataforma: URI (BEECROWD)

Problema2739

Solução:

Mais um exercício de SQL sendo resolvido! Em relação aos outros que resolvi na plataforma URI, o diferencial desse exercício, embora ele seja bem simples, é o tratamento de parte dos dados constantes nos campos e o CAST, que é a conversão explícita entre tipos.

Nesse exercício era necessário selecionar (SELECT) o nome (coluna name) e o dia do mês que cada cliente deve efetuar o pagamento de sua parcela. A dificuldade aqui reside no fato de que não há uma coluna com o dia, mas somente a coluna payday, que tem um valor de tipo timestamp. Por isso, necessitou-se da função extract, pegand somente o dia desse timestamp. Você encontra mais sobre o extract neste link: https://www.postgresql.org/docs/9.1/functions-datetime.html.

O problema é que o extract retorna um valor de dupla precisão (double precision), como podemos ver no link acima. Portanto, realizei um CAST, uma conversão explícita, fazendo com que o valor seja transformado em INTEGER (número inteiro). O trecho "as day" faz com que a coluna apareça com o nome "day". Era basicamente isso! A solução fica curta, mas precisava conhecer CAST e EXTRACT, pelo menos da forma que encontrei para resolver.

Conseguiu compreender a solução? Sua solução é diferente?

1
SELECT name, CAST(extract(day from payday) as INTEGER) as day FROM loan;

Postagem em destaque

URI (BEECROWD) - 2158 - Helping Uncle Cláudio (Ajudando o Tio Cláudio) - Matemática - C, C++ e Haskell

Buenas! Estou aqui mais uma vez para resolver um problema de Matemática! Agora tenho resolvido alguns dessa categoria, pra que vocês possam ...

Postagens mais visitadas