Extrair dia da semana

Dúvidas, dicas e truques de SQL, Select, Update, Delete, cláusulas, operações com joins, Funções em SQLs, etc
vinicius.andrade
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 5
Registrado em: Ter, 19 Jul 2011 2:47 pm
Localização: Jataí - Go

Olá!

Existe alguma função (ou alguma forma) de retornar o primeiro dia da semana X? Por exemplo, quero saber o primeiro dia da semana 52, primeiro dia da semana 51...

Alguma dica?
ricards
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 52
Registrado em: Sáb, 29 Set 2007 12:59 am
Localização: Araraquara-SP
Contato:
Ricardo Neves
Analista e Instrutor Oracle Developer
Java Developer (JPA/JSF/Hibernate/WebServices/EJB)

Não sei se isso vai lhe ajudar para o que precisa.

Function NEXT_DAY - Retorna a data do primeiro dia da semana especificado em uma string após a data inicial.

Selecionar tudo

select next_day(sysdate, 'SEXTA') from dual;
Diego_Mello
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 229
Registrado em: Sex, 05 Set 2008 2:59 pm
Localização: Igrejinha - RS
Diego Mello
Igrejinha - RS
www.twitter.com/diegolmello

Buenas!
Normalmente, essas situações são solucionadas com uma tabela de calendário, já que tem N situações em que essa tabela seria útil.
MAS... sempre tem uma solução com SQL :D

Selecionar tudo

SELECT *
  FROM (SELECT dia
              ,TO_CHAR(dia, 'iw') semana
              ,TO_CHAR(dia, 'd') dia_semana
          FROM (SELECT data_inicial + LEVEL - 1 dia
                  FROM (SELECT TRUNC(SYSDATE, 'year') data_inicial
                          FROM dual)
                CONNECT BY LEVEL <= 365 + 1))
 WHERE semana = 43
   AND dia_semana = 1
Abraço!
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante