sybase iq是否有像oracle的wm_concat字符串连接函数
我想对一组字符串进行聚合,用逗号将字符串拼接起来,不知sybase iq有无类似方便函数,或者能够自己自定义聚合函数也行
例如:
id name
1 a
1 b
2 c
2 d
输出:
id names
1 a,b
2 c,d
例如:
id name
1 a
1 b
2 c
2 d
输出:
id names
1 a,b
2 c,d
作者: xieguogui 发布时间: 2011-04-07
好象没有相似的函数,自己写了一个,试试看
ALTER FUNCTION "DBA"."fullname"(p_id integer)
RETURNS varchar(1000)
BEGIN
DECLARE name varchar(1000);
CompanyLoop:
FOR CompanyFor AS ThisCompany
CURSOR FOR
select sales from sale where prod_id=p_id
DO
SET name = name || sales||',' ;
END FOR CompanyLoop;
RETURN ( name );
END
查询
select prod_id,fullname(prod_id) from sale
group by prod_id
结果.
等你贴 上:)
ALTER FUNCTION "DBA"."fullname"(p_id integer)
RETURNS varchar(1000)
BEGIN
DECLARE name varchar(1000);
CompanyLoop:
FOR CompanyFor AS ThisCompany
CURSOR FOR
select sales from sale where prod_id=p_id
DO
SET name = name || sales||',' ;
END FOR CompanyLoop;
RETURN ( name );
END
查询
select prod_id,fullname(prod_id) from sale
group by prod_id
结果.
等你贴 上:)
作者: cityvigil 发布时间: 2011-04-07