我目前正在尝试创建一个函数,我可以在其中获取当前任期和一个未来任期。我想到了使用 add_months 函数和 1 个月,这样我就可以获得当前学期和未来一个学期。当我寻找两个值时,我仍然只得到一个值。我得到 202310,这是当前学期,而不是 202310 和 202360(这是夏天)。
`开始
SELECT STVTERM_CODE
INTO v_current_term
FROM STVTERM
WHERE SUBSTR(STVTERM_CODE,6)= '0'
AND **add_months(to_date(SYSDATE),1)** <= STVTERM_END_DATE
ORDER BY STVTERM_START_DATE;
RETURN v_current_term;
例外 当 NO_DATA_FOUND THEN v_current_term := '错误'; 返回 v_current_term;
当 TOO_MANY_ROWS THEN 返回 v_current_term;
当别人那么 v_current_term := '错误'; 返回 v_current_term;
END f_get_current_term_0;`
我假设通过在 WHERE 子句中添加 add_months,我会得到两个值。我不明白什么?