CREATE OR REPLACE FUNCTION dtqrtr(generationDate DATE)
RETURN DATE
IS
dquery DATE;
BEGIN
dquery := TRUNC(TO_DATE (generationDate),'YEAR');
dquery := TRUNC(TO_DATE (generationDate),'Q');
dbms_output.put_line ('First_Quarter : ' || dquery || ' '||'Last_Quarter : ' || add_months(dquery -1,3));
END dquery;
END dtqrtr;
SELECT dtqrtr('20-JAN-2015')
FROM DUAL;
我想要季度的第一天和第一天。但我收到錯誤消息:使用Oracle中的函數查找季度的第一天和最後一天
ORA-06575:包裝或功能DTQRTR處於無效狀態
嗯,只要我們知道了什麼錯誤消息是... –
ORA-06575:包裝或功能DTQRTR處於無效狀態 這是錯誤messege – user3722544
當您運行了'SELECT'就是你得到的錯誤查詢。該功能的問題是別的。我建議你再次執行'CREATE OR REPLACE FUNCTION',然後(假設你正在使用SQLPlus)鍵入'SHOW ERRORS FUNCTION DTQRTR';這會顯示最近編譯這個函數所導致的編譯錯誤。祝你好運。 –