◆case...when在存储过程中无法使用
select
(case when to_char(sysdate,'mm-DD')<='01-07' OR to_char(sysdate,'mm-DD')>'10-07'
then to_char(sysdate-31,'yyyy')||'-10-01'
when to_char(sysdate,'mm-DD') <='04-07' then to_char(sysdate,'yyyy')||'-01-01'
when to_char(sysdate,'mm-DD') <='07-07' then to_char(sysdate,'yyyy')||'-04-01'
when to_char(sysdate,'mm-DD') <='10-07' then to_char(sysdate,'yyyy')||'-07-01'
end) ,
to_char(sysdate,'YYYY-mm-DD') INTO EDATE
from dual;
以上SQL执行正确,但是写到存储过程中就编译出错。
为什么?
问题点数:20、回复次数:3Top
1 楼Hangfeng(寒风)回复于 2006-03-04 17:21:57 得分 0
出错是什么错误呢?
在ORACLE里执行查询返回一个数据集要用游标返回。Top
2 楼zzwind5(★★★★★)回复于 2006-03-04 18:00:24 得分 20
ORACLE9I 以上版本才能用 CASE....WHEN....Top
3 楼wwei07()回复于 2006-03-04 21:18:21 得分 0
哦,ORACLE9I 以上版本才能用!?
那么A服务器上存储过程P1是否可以调用B服务器上存储过程P2?Top




