學習筆記----SQL Server自定義函數

概述

在SQL Server中系統也自帶了許多函數,比如聚合函數count、sum、min等,但有的時候,這些函數並不能滿足我們的使用,這個時候我們就得自己定義一個函數

函數和存儲過程的區別

存儲過程是用戶定義的一系列SQL語句的集合,而函數通常是數據庫已定義的方法,具體區別如下:

  1. 對於存儲過程來說可以返回參數,而函數只能返回值或者表對象.
  2. 函數必須有返回值,存儲過程可有可無
  3. 存儲過程一般是作爲一個獨立的部分來執行,而函數可以作爲查詢語句的一部分來調用.

創建函數

建立一表用來做練習例子:

字段名稱 字段類型 字段描述
ID int
Name nvarchar(50)
Sex bit

自定義函數:

go
create function ConvertToSex(
	@sex bit
)
returns varchar(4)
as
begin
	declare @rSex varchar(4)
	if(@sex=1)
		select @rSex='男'
	else
		select @rSex='女'
	return @rSex
end
``
調用函數:
```sql
select *, [dbo].[ConvertToSex](sex) from [dbo].[Customers]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章