我想创建一个从员工表返回最大日期的过程,然后允许我在选择语句中再次调用最大日期。
谢谢。
注意:我将在许多用于报告的选择语句中使用max_date_PARAM
。
CREATE OR REPLACE PROCEDURE max_date_proc (max_date_PARAM out DATE)
IS
BEGIN
SELECT max(start_date) INTO max_date_PARAM
FROM employee
END max_date_proc;
/
select * from benefits where claim > = max_date_PARAM;
最佳答案
如果你创建了一个函数
CREATE OR REPLACE FUNCTION get_max_start_date
RETURN DATE
IS
l_max_date DATE;
BEGIN
SELECT MAX(start_date)
INTO l_max_date
FROM employee;
RETURN l_max_date;
END get_max_start_date;
然后你可以查询
SELECT *
FROM benefits
WHERE claim >= get_max_start_date();
当然,你也可以在没有函数的情况下这样做
SELECT *
FROM benefits
WHERE claim >= (SELECT MAX(start_date)
FROM employee)
https://stackoverflow.com/questions/5585782/