以前的方法:
ALTER FUNCTION [dbo].[GetUserManagerByTeam]
(
-- Add the parameters for the function here
@userid int,
@TeamName varchar(100)
)
RETURNS TABLE
AS
RETURN
(
Select FieldValue.uid,userfield.FieldAliasName,FieldValue.[content] From FieldValue
Join userfield on userfield.id=FieldValue.Fieldid
Join userPower on userPower.fieldid = userfield.id
and userPower.userid=@userid and UId in
(Select UId From FieldValue Where FieldId=8 and [Content]=@TeamName)
)
但是现在的需求是可以传不只一个TeamName,也就是
Select UId From FieldValue Where FieldId=8 and [Content]=@TeamName or [Content]=@TeamName1
or [Content]=@TeamName2 or...
该怎么该??????
在线等答复,请教!!!!!
ALTER FUNCTION [dbo].[GetUserManagerByTeam]
(
-- Add the parameters for the function here
@userid int,
@TeamName varchar(100)
)
RETURNS TABLE
AS
RETURN
(
Select FieldValue.uid,userfield.FieldAliasName,FieldValue.[content] From FieldValue
Join userfield on userfield.id=FieldValue.Fieldid
Join userPower on userPower.fieldid = userfield.id
and userPower.userid=@userid and UId in
(Select UId From FieldValue Where FieldId=8 and [Content]=@TeamName)
)
但是现在的需求是可以传不只一个TeamName,也就是
Select UId From FieldValue Where FieldId=8 and [Content]=@TeamName or [Content]=@TeamName1
or [Content]=@TeamName2 or...
该怎么该??????
在线等答复,请教!!!!!
or [Content]=@TeamName2 or...一大串,事先拼凑好,然后把它作为一个参数传进去吧然后函数体里面改用拼凑SQL语句的方式如declare @strSQL varchar(6000) -- 主语句,该变量用于拼凑完整的SQL语句用
//下面开始拼凑
set @strSQL = 'select top ' + str(@PageSize) + ' * from ['
set @strSQL += '....................................'
//搞定后,最后执行上面的完整语句
exec (@strSQL)