内联表值函数

内联表值函数是一种可重用的表表达式,能够支持输入参数。除了支持输入参数以外,内联表值函数在其他方面都与视图相似。

IF OBJECT_ID('dbo.fn_getstu') IS NOT NULL
 DROP FUNCTION dbo.fn_Getstu;
go
CREATE FUNCTION dbo.fn_Getstu
  (@sno AS INT) RETURNS TABLE
AS
RETURN
  SELECT Sno, Sname, Ssex, Sbirthday, Class 
   FROM Student
   WHERE Sno = @sno;
GO
此内联表值函数接受一个代表学生ID的输入参数@sno,返回输入id下的学生信息。

一下代码对这个函数进行查询,返回ID为107的学生;

SELECT sno, sname, ssex
FROM fn_Getstu(107)

返回如下输出;

此外,可以在连接中引用内联表值函数。例如,以下查询将内联表值函数于Score表进行连接,对学生107的成绩进行匹配;

SELECT S.Sno, sname, ssex, degree
FROM fn_Getstu(107) AS S
  JOIN Score AS SC
    ON S.Sno = SC.Sno;
返回如下输出;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值