SQL SERVER 自定義函式

2021-08-16 00:21:23 字數 1692 閱讀 4132

元宵節快樂

自定義函式分為兩類:一類為 標量函式,一類為表值函式。

create funetion 函式名(引數) 

return 返回值資料型別 

[with ] 

[as] 

begin 

sql語句(必須有return 變數或值) 

end

一、內聯**值函式

create function 函式名(引數) 

returns table 

[with] 

as  return(一條sql語句)

二、多句錶值函式

create function 函式名(引數) 

return @dt table(列的定義) 

[with] 

as begin 

sql語句 

end

說語法太難理解了,不如來點例子吧

create function umes(@id int)

returns nvarchar(30)

as begin

declare @name nvarchar(30)

select @name=firstname from employees where employeeid=@id

return @name

end

print dbo.umes(1)/*呼叫*/

刪除標量函式
drop function umes
create function um()/*無參*/

returns table

as return select employeeid from employees

create function um(@id int )/*有參*/

returns table

as return select firstname from employees where employeeid=@id

呼叫錶值函式(看成乙個表)
select * from dbo.um()
select * from dbo.um(1)
多表值函式,返回得到仍然是乙個表,但是它可以進行多語句的處理,彌補的單錶值函式的不足。

create function  inline(@id int)

returns @student table(name nvarchar(30))

begin

insert into @student(name) select firstname from employees where employeeid=@id

return

end

呼叫:

select  name from dbo.inline(2)

sqlserver自定義函式

returns 子句指定一種標量資料型別,則函式為標量值函式。語法create function 函式名 引數 returns 返回值資料型別 with as begin sql語句 必須有return 變數或值 end 釋義 列子 create function funcgetresult ret...

SQL SERVER 自定義函式

sql server自定義函式分三種 注意returns,需要加 s 標量值函式,內聯式錶值函式,多語句錶值函式。標量值函式 create function funcname a int returns intas begin sql語句 return intend 內聯式錶值函式 沒有begin....

SQL Server自定義函式

自定義函式分為 標量值函式或錶值函式兩種。錶值函式又分為兩種 內嵌錶值函式 行內函式 或多語句函式 建立標量值函式的語法 create function 函式名 引數 returns 返回值資料型別 with as begin sql語句 必須有return 變數或值 end這裡的with為附加選項...