pessoal, beleza?
preciso fazer um select onde se uma data estiver entre o período 01/01 (de qualquer ano) e 31/05 (de qualquer ano), eu retornarei um indicador '1º semestre'
e entre 01/06 a 31/12 (de qualquer ano) = '2º semestre'.
Como saber se uma data qualquer pertence ao 1º semestre?
- adrianoturbo
- Moderador
- Mensagens: 393
- Registrado em: Qui, 20 Mar 2008 4:09 pm
- Localização: Brasília
Adriano Alves
---Para cada problema dificil existe uma solução simples.----
---Para cada problema dificil existe uma solução simples.----
Brother,converte o mês em numéro com a function to_number ,na verdade vai precisar da function to_char também para fazer a conversão em string e depois em número ,na sequência coloque os filtros e seja feliz ,seguem os códigos de como fazer .
select to_number(to_char(campo_data ,'mm') mês from qualquer_coisa
where mês <=6 --- primeiro semestre
select to_number(to_char(campo_data ,'mm') mês from qualquer_coisa
where mês >6 --- segundo semestre semestre
- Porva
- Rank: DBA Sênior
- Mensagens: 342
- Registrado em: Seg, 29 Jan 2007 7:36 am
- Localização: São Paulo/SP
Rafael S. Nunes
São Paulo/SP
São Paulo/SP
obrigado Adriano,
a solução é até simples mesmo, eu não me liguei, também vi uma outra função aqui no Fórum que achei interessante, a função Extract:
dá pra usar para dias e anos também:
a solução é até simples mesmo, eu não me liguei, também vi uma outra função aqui no Fórum que achei interessante, a função Extract:
SELECT EXTRACT(MONTH FROM SYSDATE) mês FROM dual;
dá pra usar para dias e anos também:
SELECT EXTRACT(DAY FROM SYSDATE) mês FROM dual;
SELECT EXTRACT(YEAR FROM SYSDATE) mês FROM dual;
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 13 visitantes