一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數據庫技術|

服務器之家 - 數據庫 - Sql Server - SQl Function 創建函數實例介紹

SQl Function 創建函數實例介紹

2020-05-11 15:55MSSQL教程網 Sql Server

這篇文章主要介紹了SQl Function 創建函數實例介紹,需要的朋友可以參考下

 在SQL中系統已為我們提供了很非常豐富的函數:例:聚會函數avg, sum,count,max,min 日期函數:Day,Month,Year等等  為我們日常開發節省很多時間  但是有一些特殊需求的話SQL 也提供自己創建函數的功能下面舉一小例子:需求: 某一訂單表 編號,訂單號,產品名稱 要知道 某一訂單號的產品名稱 名稱之間用逗號(,)隔開 如下圖:

SQl Function 創建函數實例介紹

我們創建一個標題函數: StrName 創建過程類似創建存儲過程 如下:

SQl Function 創建函數實例介紹

點擊右鍵創建 表值函數與標量函數 從名稱就可以分出來  一個返回表(集合) 標題(單一) 在這個小例子中因為我們只返回名字 所以創建一個標量函數 代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Create FUNCTION [dbo].[OrderDetailGetStrNameByOrderId]
(
  @OrderId int
)
RETURNS varchar(500)
AS
BEGIN
  -- Declare the return variable here
  declare @StrPassengername varchar(500)
  set @StrPassengername=''
  select @StrPassengername=@StrPassengername+ Passengername +', ' from OrderDetail where OrderId=@OrderId
  select @StrPassengername=substring(@StrPassengername,0,len(@StrPassengername))
  -- Return the result of the function
  RETURN @StrPassengername
 
END

創建好之后在就可以像avg,sum等函數一樣的使用 減少代碼量 如下

?
1
2
3
select distinct A.OrderId,
(SELECT [dbo].[OrderDetailGetStrNameByOrderId](A.OrderId)) StrName
from OrderDetail A

 

完畢。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 鬼畜重口高h合集长短篇 | 国产一卡二卡3卡4卡四卡在线视频 | 亚洲高清一区二区三区四区 | 视频一本大道香蕉久在线播放 | 舔小说| 免费国产成人α片 | 国产麻豆成91 | 国产精品刺激好大好爽视频 | 国产婷婷成人久久av免费高清 | av排名| 全黄h全肉细节修仙玄幻文 全彩调教侵犯h本子全彩妖气he | 美国一级大黄大色毛片 | 娇妻被又大又粗又长又硬好爽 | 吻戏辣妞范1000免费体验 | 国产精品一区二区三区免费 | 日本人成动漫网站在线观看 | 国产精品猎奇系列在线观看 | 久久这里只有精品国产精品99 | 艹b小说 | 欧乱色国产精品兔费视频 | 女海盗斯蒂内塔的复仇2免费观看 | 亚洲欧美精品久久 | 日韩欧美一区二区三区中文精品 | 日韩每日更新 | 精品国产综合区久久久久久 | poren18美女| 国产免费一区二区三区免费视频 | 九九国产在线观看 | 国产精品一区二区不卡的视频 | 青草视频在线观看视频 | 四虎永久免费地址在线网站 | 华人在线京东热 | 精品AV亚洲乱码一区二区 | 五花大绑esebdsm国产 | ass亚洲熟妇毛茸茸pics | 亚洲春黄在线观看 | 4p高h三男一女 | 拔插拔插.com| 毛片一区二区三区提莫影院 | 娇小异类videos | 免费欧美日韩 |