DB2---创建返回结果集的函数

更新时间:2023-06-22 12:59:11 阅读: 评论:0

DB2---创建返回结果集的函数
在数据验证中,经常遇到需返回结果集的操作,故整理⼀个返回结果集的DB2函数,便于后期查阅
1、准备测试表
/*创建测试表:设置结果集的属性为表字段*/
CREATE TABLE  Test_EXWASTE_EXC
(
Test_Time TIMESTAMP ,--
Test_STATION CHARACTER(6),--
Test_Three CHARACTER(2) ,--
Test_Four varchar(3) ,--2013浙江高考英语
Test_Five varchar(1) ,--
Test_MODIFY varchar(1) --
)
2、创建返回结果集的函数
/*函数的作⽤:refpk中以‘,’分隔的信息插⼊到测试表,并返回结果集*/
hr是什么意思--/tpm管理
create FUNCTION Test_Func_GetInfo(REFPK VARCHAR(500)) --REFPK为传⼊的参数
returns--返回值的类型为table
TABLE(Out_Time TIMESTAMP,
Out_Station character(6),
Out_Three character(2),
Out_Four SMALLINT,
fucking是什么意思
Out_Five smallint,
Out_Modify character(1))
LANGUAGE SQL
MODIFIES SQL DATA                    --MODIFIES SQL DATA 表⽰函数中有ddl操作
begin atomic
DECLARE Out_Time TIMESTAMP;
DECLARE Out_Station character(6);
DECLARE Out_Three character(2);
DECLARE Out_Four SMALLINT;
DECLARE Out_Five smallint;
DECLARE Out_Modify character(1);
DECLARE I_INDEX INT;--
DECLARE I_Length INT;
DECLARE I_Locate INT;
shots是什么意思DECLARE V_Char character(1);
DECLARE I_Switch INT;
DECLARE I_Return INT;
DECLARE V_Refpk varchar(500);
t I_Return=0;
t I_INDEX=1;
日语可恶
t I_Length=0;
t I_Locate=1;
t I_Switch=0;
t V_Refpk=refpk||',';
t I_Length=length(V_Refpk);
t I_Return=1;
while I_INDEX<=I_Length do              --将','分隔的信息取出来
t V_Char=substr(V_Refpk,I_INDEX,1);
if V_Char=','then
t I_Switch=I_Switch+1;
if I_Switch=1then t Out_Time=timestamp(substr(V_Refpk,I_Locate,I_INDEX-I_Locate));
elif I_Switch=2then t Out_Station=substr(V_Refpk,I_Locate,I_INDEX-I_Locate);
elif I_Switch=3then t Out_Three=substr(V_Refpk,I_Locate,I_INDEX-I_Locate);
elif I_Switch=4then t Out_Four=substr(V_Refpk,I_Locate,I_INDEX-I_Locate);
elif I_Switch=5then t Out_Five=substr(V_Refpk,I_Locate,I_INDEX-I_Locate);
el t Out_Modify=substr(V_Refpk,I_Locate,I_INDEX-I_Locate);
成都o培训
end if;
t I_Locate=I_INDEX+1;
end if;
t I_INDEX=I_INDEX+1;
美国联邦法规
end while;
inrt into Test_EXWASTE_EXC values(Out_Time,Out_Station,Out_Three,Out_Four,Out_Five,Out_Modify);
return lect*from Test_EXWASTE_EXC ;
end
/
3、函数的调⽤
2012年四川高考语文由于函数的返回值为table,故我们操作此函数像操作表⼀样失望的英语
lect T.OUT_TIME from table(Test_Func_GetInfo('2019-06-10 07:30:40,020801,28,154,0,1')) T where T.OUT_TIME=timestamp'2019-06-10 07:30:40' --注意T的字段是函数中定义的字段,与Test_Exwaste_exc⽆关
4、关键字MODIFIES SQL DATA删掉,报-374错误

本文发布于:2023-06-22 12:59:11,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/90/153730.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:结果   函数   返回   高考
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图