这是我的代码。
CREATE OR REPLACE FUNCTION estimated_hours (sno NUMBER)
RETURN NUMBER IS
return_var NUMBER;
BEGIN
SELECT COUNT (*)
FROM task
WHERE planned_start_date > change_date
GROUP BY stage_id
RETURN return_var;
END;
/
我是数据库的新手,我不知道自己做错了什么。我试图计算并返回给定阶段的估计小时总数,然后再改变小时数。
答案 0 :(得分:0)
您需要将select的结果放在某处:
SELECT COUNT (*)
INTO return_var -- you are missing this
FROM task
WHERE planned_start_date > change_date
GROUP BY stage_id; -- and you are missing the statement terminator ; here
您应该阅读PL / SQL手册以了解有关此内容的更多详细信息:http://docs.oracle.com/cd/E11882_01/appdev.112/e25519/static.htm#LNPLS006