SQL语句--简单的函数书写举例(3)

SQL语句–简单的函数书写举例(3)

在前两篇中,案例只涉及到简单的数值,这样的函数称为【标量函数】
这里的函数,可以简单的理解为它是一个可以进行计算的工具

标量函数:是简单的数值,eg:int、char、decimal;它不能返回文本、图片等
表值函数:返回的是1个表

这次案例我们例举一个简单的【表值函数】
我想达到的目的是:
输入“1个员工的ID”,能返回(输出)“该员工的DepartmentName”和“该员工的Name”

【1.创建函数】

------------------------------------创建函数 dbo.Employee_Department-------------------
eg:
CREATE FUNCTION dbo.Employee_Department(@EmployeeID int)
---CREATE FUNCTION 函数名(@参数 数据类型)
RETURNS TABLE
---这行为固定格式
AS
RETURN 
---当该函数是【表值函数】的时候,这个return后面不用写别的东西
SELECT t1.DepartmentName AS '所住公寓',t2.Name AS '员工'
---查 DepartmentName列 命名为 所住公寓 ;Name列 命名为 员工
FROM  dbo.Department t1 INNER JOIN dbo.Employee t2 ON t2.DepartmentID = t1.DepartmentID
WHERE t2.EmployeeID=@EmployeeID
---将 具体的 参数值@EmployeeID 赋值给 t2.EmployeeID ,根据这个值,在关联的两张表里,查对应 DepartmentName和 Name的信息 

【2.查询函数】

------------------------------------查询函数 dbo.Employee_Department-------------------
SELECT * FROM dbo.Employee_Department(1003)
---查询员工编号为1003的员工的 DepartmentName和 Name信息

返回结果
在这里插入图片描述
此时发现 DepartmentName 列命名不符合实际,需要对函数进行修改
【3.修改函数】

------------------------------------修改函数 dbo.Employee_Department-------------------
ALTER FUNCTION dbo.Employee_Department(@EmployeeID int)
RETURNS TABLE
AS
RETURN 
SELECT t1.DepartmentName AS '系别',t2.Name AS '员工'
---将'所住公寓' 改为 '系别'
FROM  dbo.Department t1 INNER JOIN dbo.Employee t2 ON t2.DepartmentID = t1.DepartmentID
WHERE t2.EmployeeID=@EmployeeID

再次执行查询语句,返回结果如下图:
在这里插入图片描述
【4.删除函数】
当我们想删除该函数时,执行下面的语句即可:

------------------------------------删除函数 dbo.Employee_Department-------------------
DROP FUNCTION dbo.Employee_Department 

上一篇:SQL语句–简单的函数书写举例(2)
下一篇:SQL语句–简单的函数书写举例(4)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值