最近做了一次从SQL Server到Oracle的迁移使用SQL Oracle Server
迁移过去之后发现一个问题:
在SQL Server中写的一些函数返回的值是Table
而Oracle中不能直接返回Table
函数数量比较多,使用的地方也不少,如果全部重写工作量太大了,有没有简单点的办法
比如:SQL Server中将字符串按照某个特定字符拆分,返回拆分后形成的Table
ALTER  FUNCTION f_splitSTR 
(@s varchar(8000),--待分拆的字符串 
 @split varchar(10))--数据分隔符
RETURNS @re TABLE(col varchar(100)) 
AS
 BEGIN
   Declare @splitlen int
   SET @splitlen = LEN(@split+'a')-2
   WHILE CHARINDEX(@split,@s)>0
   BEGIN
     Insert @re VALUES(LEFT(@s,CHARINDEX(@split,@s)-1))
     SET @s = STUFF(@s,1,CHARINDEX(@split,@s)+@splitlen,'')
   END
   INSERT @re Values(@s)
   RETURN 
end
类似这样的函数还有好多,有什么好的办法用做少的工作量能够完成它的功能呢?
新来的没多少分,见谅