Pular para o conteúdo

Select com extração de dia, mês ou ano no PostgreSQL

Dica publicada em Banco de Dados / Postgres
Evângelus Espolador espola
Hits: 22.674 Categoria: Banco de Dados Subcategoria: Postgres
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Select com extração de dia, mês ou ano no PostgreSQL

Às vezes é necessário realizar uma consulta ou mesmo gerar um relatório fazendo a filtragem por parte da data (geralmente por ano).

Nesta dica mostrarei uma forma relativamente simples de resolver o problema utilizando o PostgreSQL.

Vamos fazer um SELECT filtrando determinada data pela porção do ano.

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
SELECT nome, dep_cod
   FROM pessoal
   WHERE EXTRACT(year FROM (SELECT dt_adm)) = '$ano'";

Neste caso estamos filtrando funcionários com ano de admissão igual ao passado em '$ano'. Simples, não?

Para o dia ou mês é só mudar 'year' por 'day' ou 'month' respectivamente.

Até a próxima.
Espolador

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Geração automática de menu drop down com banco de dados em PHP

Reindex PostgreSQL - Script para acompanhamento de execução

SQL - Copiar coluna

Instalação e configuração do PostgreSQL no Slackware

Instalando, configurando e administrando o Postgres

PostgreSQL no Fedora 18

#1 Comentário enviado por maykon19 em 14/08/2006 - 22:38h
Olá Evângelus. Muito bom esse script. Queria que vc usasse procedures
para explicação. Valeu....
#2 Comentário enviado por asdfool em 08/07/2015 - 10:47h
Interessante teu código. Normalmente faço algo do tipo: WHERE SUBSTRING(CAST(dt_adm AS VARCHAR(10)), 1, 4) = '2014'

Contribuir com comentário

Entre na sua conta para comentar.