Ah, quando se fala da função NEXT_DAY (que muito certamente vc VAI ter que usar na sua expressão /função de cálculo de dia da semana começando na segunda-feira) é praticamente um FAQ a questão de que ela pede como string o nome do dia da semana NA LINGUAGEM que a tua sessão estiver configurada, então como saber isso ? O truque , básico mas eficiente, é vc popular numa variável string o nome da semana de um dia que vc SABE que foi uma segunda-feira, tipo : x := to_char(to_date('31/12/2012', 'dd/mm/yyyy'),'DY'); Aí vc usa X como o argumento string para a NEXT_DAY...
[]s Chiappa --- Em oracle_br@yahoogrupos.com.br, "J. Laurindo Chiappa" <jlchiappa@...> escreveu > > Ah sim, IW e WW é para número da semana no ano, para número da semana no > mês começando não no dia 01, mas num dia fixo(Segunda no seu caso) realmente > não há nada nativo... Porém, é muito Simples vc escrever uma função sua, é > basicamente achar a Segunda-feira imediatamente antes do dia 01 (ou esse dia > 01 mesmo se ele caiu na 2a feira) e depois ir somando 7 dias, veja em > http://www.lifeaftercoffee.com/2006/02/01/sql-find-the-week-number-in-a-month/ > .... > > []s > > Chiappa > > --- Em oracle_br@yahoogrupos.com.br, Emerson Sanches <emerson.sanches@> > escreveu > > > > Então pessoal, a função IW ou WW eu já conheço, ela retorna a semana do > > ano, por exemplo: > > > > 01/01/2013 é a semana 01 de 2013 > > 25/01/2013 é a semana 04 de 2013 > > 28/02/2013 é a semana 09 de 2013 > > > > o que estou querendo é uma função que retorne a semana do MES, por exemplo > > > > 01/02/2013 é a semana 01 de fevereiro 2013 > > 28/02/2013 é a semana 04 de fevereiro de 2013 > > > > A função "W" funciona direitinho o problema e o seguinte: > > 01/02/2013 caiu numa sexta feira, então a função só "muda" a semana da data > > na próxima sexta feira, ex: > > > > 01/02/2013 --> semana 01 --> sexta feira > > 03/02/2013 --> semana 01 --> domingo > > 07/02/2013 --> semana 01 --> quinta feira > > 08/02/2013 --> semana 02 --> sexta feira > > > > Repararem, a semana só muda de 1 para 2 na quarta feira, ou seja 7 dias > > apos o inicio do mês Isto esta correto, mas estou precisando de > > uma função que retorne assim: > > > > 01/02/2013 --> semana 01 --> sexta feira > > 03/02/2013 --> semana 02 --> domingo > > 07/02/2013 --> semana 02 --> quinta feira > > 08/02/2013 --> semana 02 --> sexta feira > > 10/02/2013 --> semana 03 --> domingo > > > > A função deveria fazer a "virada" da semana todo domingo e não 7,14,21,28 > > dias após o inicio do mês. > > > > Obrigado pela ajuda. > > > > > > > > > > Emerson Sanches > > Analista de Sistemas > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > >