SQL Server 中函式的理解總結

2021-09-20 18:20:11 字數 789 閱讀 8287

t-sql語言為我們提供了更加靈活的方式運算元據,那就是函式,函式總的分為三大類:標量函式:(傳入乙個引數,再傳出乙個引數)聚合函式(傳入多個引數,傳出乙個引數),錶值函式(傳入乙個結果集物件,讓我們能夠通過對錶的操作對其進行處理),錶值函式在此進行細分的話可以分為兩類:內嵌錶值函式和多語句錶值函式。內嵌錶值函式模樣如下:

1 create function my_fun()returns table2 as3     return 4         select * from table_1
寫函式容易出錯的細節在於returns與return的區別

以上就是內嵌錶值函式,下面再看看多語句錶值函式:

課本上指出內嵌錶值函式與多語句錶值函式的區別為:

內嵌錶值函式沒有函式主題(begin-end)返回的是單個select的結果集;而多語句錶值函式在begin-end之間是由多個t-sql語句序列構成,這些語句可以生成記錄行並將行插入到表中,然後返回表。              ----《sql server教程第三版》

下面是乙個多語句錶值函式的示例:

create function myfun_2()returns @my_list(

column_1 char(10),

column_2 char(10)              

)as    begin

insert @my_list --操作

end

函式在傳值的時候可以加一些對值的修飾,包括唯讀,預設值等等,與其他語言很是相似

SQL SERVER中架構的理解

在sqlserver 2005中,可能大家在工作或學習的時候會經常發現這樣一些問題,你使用乙個賬戶在資料庫中建立了一張表,卻發現你自己建立的表卻沒有修改和查詢的許可權,這是一件很鬱悶的事情,在sqlserver2000中卻不存在這樣的問題,那為什麼在2005中會出現這樣的事情,這樣的設定可以帶來哪些...

SQL SERVER中架構的理解

在sqlserver 2005中,可能大家在工作或學習的時候會經常發現這樣一些問題,你使用乙個賬戶在資料庫中建立了一張表,卻發現你自己建立的表卻沒有修改和查詢的許可權,這是一件很鬱悶的事情,在sqlserver2000中卻不存在這樣的問題,那為什麼在2005中會出現這樣的事情,這樣的設定可以帶來哪些...

SQL SERVER 中的Convert函式

convert convert data type length expression style 引數 expression 如下圖 data type 目標系統所提供的資料型別,包括bigint和sql variant。不能使用使用者定義的資料型別。length nchar nvarchar c...