CREATE FUNCTION Getacctype(@accid varchar(20))
RETURNS varchar(300) AS
BEGIN
declare @i int,@accidup varchar(20), @str varchar(300)
set @accid=@accid+'.'
set @accidup=''
set @str=''
set @i=1
while CHARINDEX('.',@accid)>0
begin
if @accidup=''
set @accidup=substring(@accid, 1,CHARINDEX('.',@accid)-1)
else
set @accidup=@accidup+'.'+substring(@accid, 1,CHARINDEX('.',@accid)-1)
set @accid=substring(@accid,CHARINDEX('.',@accid)+1,len(@accid)-CHARINDEX('.',@accid))
if @str=''
set @str= (select acctype from HD_AccType where accid=@accidup)
else
set @str=@str+'->'+ (select acctype from HD_AccType where accid=@accidup)
end
return @str
END
RETURNS varchar(300) AS
BEGIN
declare @i int,@accidup varchar(20), @str varchar(300)
set @accid=@accid+'.'
set @accidup=''
set @str=''
set @i=1
while CHARINDEX('.',@accid)>0
begin
if @accidup=''
set @accidup=substring(@accid, 1,CHARINDEX('.',@accid)-1)
else
set @accidup=@accidup+'.'+substring(@accid, 1,CHARINDEX('.',@accid)-1)
set @accid=substring(@accid,CHARINDEX('.',@accid)+1,len(@accid)-CHARINDEX('.',@accid))
if @str=''
set @str= (select acctype from HD_AccType where accid=@accidup)
else
set @str=@str+'->'+ (select acctype from HD_AccType where accid=@accidup)
end
return @str
END
本文介绍了一个SQL函数,用于解析账户ID并获取对应的账户类型。通过将账户ID拆分为多个部分,函数逐步构建完整的账户类型描述。适用于数据库查询场景,帮助开发者更高效地理解和操作账户数据。
1191

被折叠的 条评论
为什么被折叠?



