same thing, try
use tempdb
goselect * into authors from pubs..authors
goCREATE FUNCTION IsContractor (@contract bit)
RETURNS varchar(3)
AS
BEGIN
DECLARE @IsContractor varchar(3)
if @contract = 1
set @IsContractor = 'yes'
else
set @IsContractor = 'no'
RETURN(@IsContractor)
END
goselect *, dbo.IsContractor(contract) from authors
goCREATE FUNCTION IsContractor2 (@contract bit)
RETURNS varchar(3)
AS
BEGIN
DECLARE @IsContractor varchar(3)
set @IsContractor = case when @contract = 1 then 'yes'
else 'no'
end
RETURN(@IsContractor)
END
goselect *, dbo.IsContractor2(contract) from authors
use tempdb
goselect * into authors from pubs..authors
goCREATE FUNCTION IsContractor (@contract bit)
RETURNS varchar(3)
AS
BEGIN
DECLARE @IsContractor varchar(3)
if @contract = 1
set @IsContractor = 'yes'
else
set @IsContractor = 'no'
RETURN(@IsContractor)
END
goselect *, dbo.IsContractor(contract) from authors
goCREATE FUNCTION IsContractor2 (@contract bit)
RETURNS varchar(3)
AS
BEGIN
DECLARE @IsContractor varchar(3)
set @IsContractor = case when @contract = 1 then 'yes'
else 'no'
end
RETURN(@IsContractor)
END
goselect *, dbo.IsContractor2(contract) from authors
解决方案 »
- 请问下面的用一条SQL语句如何实现啊
- 请问各位大虾,小妹有一个问题想请教各位:怎么利用dts实现两个数据库定时导入导出
- 请教会不会重号的问题
- 操作腾讯应用的后台和数据库需要掌握哪些基础知识
- 关于注册 Microsoft SQL Server 2000服务器的问题
- 求解环型关系的问题,大家帮帮忙谢谢!!!!!!!!
- sqlserver从控制台中删除服务器后怎么恢复
- 关于MSSQL Server DTS(非一般的问题)
- 我想把视频流数据存到库里,我一边把采集到的数据收到一边写到库的2G空间的类型里可以吗,是连续存或读(播放)
- 大侠,过来看看?在线等
- 替换指定位置的字符
- 如何将一个查询的记录当作另一个查询的列!!!
returns @a int
As
Begin
declare @b int
if @a > 100
set @b = @a
else
set @b = 100
return (@b)
Endcreate function test(@a int)
returns @a int
As
Begin
declare @b int
set @b = (case when @a > 100 then @a else 100 end)
return (@b)
End
能不能给一个表格值函数的例子,我再加20分
returns @tb table(aa varchar(250))
as
begin
if @aa=0
insert into @tb select name from syscolumns
else
insert into @tb select name from sysobjects
return
end
go
select * from dbo.test(1)
returns bit
as
begin
declare @Rbit bit,@Slen int,@i int
set @Rbit=1
if len(@inputStr)=0
begin
set @Rbit=0
Return @Rbit
end
else
set @Slen=len(@inputStr)
set @i=1
while @i<=@slen
begin
if substring(@inputStr,@i,1) like '[0-9.-]'
set @i=@i+1
else
begin
set @Rbit=0
Return @Rbit
end end
if @Slen=1 and (@inputStr='.' or @inputStr='-') or (@slen=2 and (@inputStr='.-' or @inputStr='-.'))
set @Rbit=0
return @Rbit
end
returns bit
as
begin
declare @Rbit bit,@Slen int,@i int
set @Rbit=1
if len(@inputStr)=0
begin
set @Rbit=0
Return @Rbit
end
else
set @Slen=len(@inputStr)
set @i=1
while @i<=@slen
begin
if substring(@inputStr,@i,1) like '[0-9.-]'
set @i=@i+1
else
begin
set @Rbit=0
Return @Rbit
end end
if @Slen=1 and (@inputStr='.' or @inputStr='-') or (@slen=2 and (@inputStr='.-' or @inputStr='-.'))
set @Rbit=0
return @Rbit
end
returns varchar(50)
asbegindeclare @Role_Str varchar(50),@Folder varchar(100)set @Role_Str='' begin
set @Folder=substring(dbo.fun_FolderID(@FolderID),0,charindex('\',dbo.fun_FolderID(@FolderID)))
if exists(select UserName from Login_User where ClientID=@ClientID and charindex(@Folder,RoleID_Read)<>0 and charindex(@Folder,RoleID_ReName)<>0 and charindex(@Folder,RoleID_Delete)<>0 and charindex(@Folder,RoleID_UpLoad)<>0 and charindex(@Folder,RoleID_DownLoad)<>0)
set @Role_Str = @Role_Str + 'A.'
else
begin if exists(select UserName from Login_User where ClientID=@ClientID and charindex(@Folder,RoleID_Read)<>0)
set @Role_Str = @Role_Str + 'R.'
if exists(select UserName from Login_User where ClientID=@ClientID and charindex(@Folder,RoleID_ReName)<>0)
set @Role_Str = @Role_Str + 'E.'
if exists(select UserName from Login_User where ClientID=@ClientID and charindex(@Folder,RoleID_Delete)<>0)
set @Role_Str = @Role_Str + 'D.' if exists(select UserName from Login_User where ClientID=@ClientID and charindex(@Folder,RoleID_UpLoad)<>0 and charindex(@Folder,RoleID_DownLoad)<>0)
set @Role_Str = @Role_Str + 'W.'
else
begin
if exists(select UserName from Login_User where ClientID=@ClientID and charindex(@Folder,RoleID_UpLoad)<>0)
set @Role_Str = @Role_Str + 'Up.'
if exists(select UserName from Login_User where ClientID=@ClientID and charindex(@Folder,RoleID_DownLoad)<>0)
set @Role_Str = @Role_Str + 'Down.'
end
end
end if @Role_Str=''
set @Role_Str = @Role_Str + 'R.'return left(@Role_Str,len(@Role_Str)-1)end