oracle 的一个fuction

PROMPT CREATE OR REPLACE FUNCTION getscr
CREATE OR REPLACE function getscr(V_item IN VARCHAR2) return varchar2
is V_string VARCHAR2(1000);
V_count NUMBER;
-- V_item VARCHAR2;
CURSOR c_scr( V_fsc VARCHAR2) IS
[color=red] SELECT imageid FROM gj_pp_image WHERE ppid=V_fsc;[/color]
begin
V_string :='';
V_count :=0;
FOR v_scr IN c_scr(V_item) LOOP
V_count :=V_count+1;
IF V_string is null THEN
V_string :=v_scr.imageid;
else
V_string := V_string||','||v_scr.imageid;
END if ;
END LOOP;
return V_string;
end;
/

作用--把表 gj_pp_image中相同ppid的行的imageid合成一个字段,用逗号隔开,事例:
SELECT a.*,getscr(a.ppid) imageid FROM gj_pp a;
得到的结果:
PPID PPNUM YEAR_QUARTER NAME ISSUEDBY CATEGORY IMAGEID
9 1324654 2013-3Q s-watch sylviaz 1 59,61,60
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值