sqlserver自定义函数(标量值函数,表值函数)

sqlserver自定义函数(标量值函数,表值函数),第1张

概述用户自定义函数有两类:表值函数、标量值函数。   表值函数:返回值是数据表的函数 调用方式 select  b.*  from tableA a accross apply Fun_BiaoZhiFun(taskid) b  用户定义表值函数返回 table 数据类型,表是单个 SELECT 语句的结果集。 (1)只能返回Table,returns后边一定是table (2)as后面没有begi

用户自定义的函数有两类:表值函数、标量值函数。

 

表值函数:返回值是数据表的函数 调用方式 select  b.*  from tableA a accross apply Fun_BiaoZhiFun(taskID) b 

用户定义表值函数返回 table 数据类型,表是单个 SELECT 语句的结果集。

(1)只能返回table,returns后边一定是table

(2)as后面没有begin/end,只有一个return语句返回特定的记录

对于多语句表值函数,在 BEGIN...END 语句块中定义的函数体包含一系列 Transact-sql 语句,这些语句可生成行并将其插入将返回的表中。

(1)returns后面直接定义返回的表类型,首先是定义表名,表明前面要加@,然后是关键字table,最后是表的结构。(实质上是定义了一个表变量)

(2)在begin/end语句块中,直接将需要返回的结果insert到returns定义的表中就可以了,在最后return时,会将结果返回。

(3)最后只需要return,return后面不跟任何变量。(返回的是表变量里面的数据)

 

标量值函数:返回值是单个值的函数  .函数的调用方式 select  dbo.Fun_BiaoliangZhiFun(taskID)  from  sys_inst_prcs where taskID=‘‘;

 

(1)必须使用两部分组成函数的名字来调用函数,即所有者.对象名,如dbo.F3_GetMax(2,3)(2)所有的传入参数前必须加@(3)不要写漏和写错关键字,如as,returns,return(4)returns后面不是跟一个变量,而是跟变量的返回值类型(5)在begin/end语句块中,使用的是return

总结

以上是内存溢出为你收集整理的sqlserver自定义函数(标量值函数,表值函数)全部内容,希望文章能够帮你解决sqlserver自定义函数(标量值函数,表值函数)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/1176882.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存