Função para buscar Primeiro dia Semana / Ultimo dia Semana
Bom dia pessoal,
Preciso de uma ajuda ! Estou fazendo uma função para poder retornar qual o Primeiro e Último dia da semana de uma respectiva data..
CREATE OR REPLACE
FUNCTION FIRST_LAST_DAY_WEEK (ANOSEMANA IN VARCHAR2, PRIMEIRODIA OUT DATE, ULTIMODIA OUT DATE) RETURN DATE AS
BEGIN
SELECT PRIMEIRO_DIA_SEMANA INTO PRIMEIRODIA, PRIMEIRO_DIA_SEMANA+6 INTO ULTIMODIA
FROM(
SELECT (TO_DATE(YEAR||'0101','YYYYMMDD') + 7 * (SEMANA-1))-2 PRIMEIRO_DIA_SEMANA
FROM (
SELECT substr(ANO_SEMANA,1,4) YEAR, to_number(substr(ANO_SEMANA,5)) SEMANA
FROM (
SELECT ANOSEMANA ANO_SEMANA FROM DUAL
)
)
);
END FIRST_LAST_DAY_WEEK;Tenho como parametro ANOSEMANA que recebe valor 'YYYYIW', e os outros parametros sao para a saidas das datas do primeiro/ultimo dia da semana respectiva.
Estou com o seguinte problema e nao sei como soluciona-lo:
- Erro(3,3): PL/SQL: SQL Statement ignored
- Erro(3,70): PL/SQL: ORA-00923: palavra-chave FROM não localizada onde esperada
Alguém poderia me ajudar com isso ?
Existe algum meio melhor para eu conseguir essas datas atraves de uma funcao ?
Obrigado.
Discussão (1)
Carregando comentários...