sql function函数的用法(SQl Function 创建函数实例介绍)
类别:数据库 浏览量:2425
时间:2022-03-28 13:06:39 sql function函数的用法
SQl Function 创建函数实例介绍在SQL中系统已为我们提供了很非常丰富的函数:例:聚会函数avg, sum,count,max,min 日期函数:Day,Month,Year等等 为我们日常开发节省很多时间 但是有一些特殊需求的话SQL 也提供自己创建函数的功能下面举一小例子:需求: 某一订单表 编号,订单号,产品名称 要知道 某一订单号的产品名称 名称之间用逗号(,)隔开 如下图:
我们创建一个标题函数: StrName 创建过程类似创建存储过程 如下:
点击右键创建 表值函数与标量函数 从名称就可以分出来 一个返回表(集合) 标题(单一) 在这个小例子中因为我们只返回名字 所以创建一个标量函数 代码如下:
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等函数一样的使用 减少代码量 如下
select distinct A.OrderId, (SELECT [dbo].[OrderDetailGetStrNameByOrderId](A.OrderId)) StrName from OrderDetail A
完毕。
您可能感兴趣
- sql查询地址中包含某个字段(SQL查询字段被包含语句)
- mysql读写分离怎么实现的(详解MySQL主从复制及读写分离)
- mysql怎么设置某个字段默认值(MySQL表字段时间设置默认值)
- mysql主从复制延迟解决方案(关于mysql主备切换canal出现的问题解决)
- mysql总是报错error(MySQL 5.6主从报错的实战记录)
- thinkphp5.1手动连接mysql数据库(thinkphp5框架结合mysql实现微信登录和自定义分享链接与图文功能示例)
- pythonsql注入检测(Python版Mssql爆破小脚本)
- sql server 过期激活(SQL Server评估期已过问题的解决方法)
- mysql有哪些约束(MySQL完整性约束的定义与实例教程)
- SQL Server数据类型有哪些
- mysql单独导出表(mysql实现从导出数据的sql文件中只导入指定的一个表)
- sql server 2008自定义函数(SQL SERVER 2012新增函数之逻辑函数CHOOSE详解)
- SqlParameter用法
- mysql慢日志设置多少合适(MySQL慢查询日志的作用和开启)
- Sql Server 更新锁(UPDLOCK)
- 如何排查mysql存储过程的问题(Mysql修改存储过程相关权限问题)
- 《道德经》 人生避开骄狂,才能免去祸患(道德经人生避开骄狂)
- 郭麒麟(郭麒麟)
- 古人十句 戒骄 名言,醍醐灌顶,受益匪浅(古人十句戒骄名言)
- 《道德经》:功成不局,泰而不骄(道德经:功成不局)
- 每日一典 过江之鲫(每日一典过江之鲫)
- 红色代表什么(红色代表什么意义和象征)
热门推荐
- css 自适应手机屏幕(Css实现手机端页面强制横屏的方法示例)
- nginx反向代理及原理(传说中的反向代理,Nginx+Apache软件配置Web服务器)
- zabbix如何验证监控(Zabbix 动态执行监控采集脚本的实现原理)
- pyqt5加载chrome浏览器(PyQt5内嵌浏览器注入JavaScript脚本实现自动化操作的代码实例)
- thinkphp5对接支付宝扫码支付(ThinkPHP框架下整合支付宝支付功能图文教程)
- js中数组的操作
- dedecms图集关键词(Dedecms 生成漂亮整齐的缩略图)
- docker node 分阶段构建(Docker安装、创建镜像、加载并运行NodeJS程序的详细过程)
- dede的数据库在哪(dede后台Fatal error: Allowed memory size of 8388608 bytes exhausted问题的解决方)
- ubuntu下使用vscode(使用Vscode结合docker进行开发的详细过程)