CREATE FUNCTION dbo.f_str(@f_value_id varchar(10))
RETURNS varchar(100)
AS
BEGIN
DECLARE @re varchar(100)
SET @re=''
SELECT @re=@re+';'+CAST(f_value as varchar)
FROM zte_cmmia_rs_subp_pu
WHERE f_value_id=@f_value_id
RETURN(STUFF(@re,1,1,''))
END
RETURNS varchar(100)
AS
BEGIN
DECLARE @re varchar(100)
SET @re=''
SELECT @re=@re+';'+CAST(f_value as varchar)
FROM zte_cmmia_rs_subp_pu
WHERE f_value_id=@f_value_id
RETURN(STUFF(@re,1,1,''))
END
解决方案 »
- 怎样实现RMAN在两台服务器间互相备份
- 初学oracle 10g 觉得很难,高手给点建议。
- 求Oracle10g在Windows 2000或者2003或者XP做RAC的文档
- 如何启动oracle服务
- 在sql语句中该如何处理“'”一个单引号
- 我在XP下装了个Oracle 9.0,但系统一启动就自动启动了Oracle,想让系统启动时,不启动Oracle,怎么办?
- 两字段和为一字段的SELECT语句.
- 有关OMS的问题
- 怎样把oracle9i的数据库备份并导入到oracle8.1.6里,在线等待!
- 新手想问关于SQL语句的一些问题,请各位多多帮忙!
- 什么时候会用到动态sql语句,大家能举个例子吗?
- 关于索引表使用的问题
RETURNS varchar(100)
AS
re varchar(100) ;
BEGIN
re:='' ;
SELECT ';'||to_char(f_value)
into re
FROM zte_cmmia_rs_subp_pu
WHERE f_value_id=in_f_value_id ;
RETURN re
END
RETURNS varchar(100)
AS
re varchar(100) ;
BEGIN
re:='' ;
SELECT to_char(f_value)
into re
FROM zte_cmmia_rs_subp_pu
WHERE f_value_id=in_f_value_id ;
RETURN re ;
END
看了下stuff的意思,看样子是要把;滤掉,不知道你这个函数的意思是什么
RETURN VARCHAR2
AS
re varchar(100);
CURSOR v_c IS SELECT f_value
FROM zte_cmmia_rs_subp_pu
WHERE f_value_id=xx ;
BEGIN
FOR i IN v_c LOOP
re:=re||';'||i.f_value;
END LOOP;
RETURN TRIM(leading ';' FROM re);
END;
/