小白终是踏上了这条不归路----小文的mysql学习笔记(22)--------函数
**
小白终是踏上了这条不归路----小文的mysql学习笔记(1)
小白终是踏上了这条不归路----小文的mysql学习笔记(2)----条件查询
小白终是踏上了这条不归路----小文的mysql学习笔记(3)----排序询查
小白终是踏上了这条不归路----小文的mysql学习笔记(4)----常见的基本函数
小白终是踏上了这条不归路----小文的mysql学习笔记(5)----分组查询
…
…
小白终是踏上了这条不归路----小文的mysql学习笔记(目录)
**
我觉得函数和前面的存储过程很像,都是将一段代码语句封装起来,方便我们使用。
但是和存储过程还是具有一定的区别。
**
函数和存储过程的区别:
存储过程: 可以有0个返回,也可以有多个返回,适合做批量插入、批量更新
函数: 有且仅有1个返回,适合做处理数据后返回一个结果
ps: 在创建函数的时候同样要用delimiter语句来设置结束标记。
一、函数的创建和调用语法
1、创建语法
语法: create function 函数名(参数列表) returns 返回类型
begin
函数体
end
解释:
参数列表: 一共包含参数名和参数列表两部分。
函数体: 是我们封装的所有sql语句,在写完函数体后,一定要写上 return 语句 ,不然会报错。
我们一般是在前面写函数体,写完之后在后面写上return值
注意: 如果函数体中仅有一句话,则可以省略begin end
2、调用语法
语法:select 函数名(参数列表)
下面我们来分别举几个栗子来演示一下
在创建函数前,我们需要看看我们是否有创建函数的权限
很明显小文的是0,是没有权限的所以我们要将它开启才能创建函数,不然会报错
所以我们需要:SET @@global.log_bin_trust_function_creators = 1;来开启权限
开启之后我们就可以创建函数了。
补充: 在存储过程中有返回的变量,所以我们不用对此进行设置;但是,在我们的函数中没有所以我们便需要用到 declare来声明变量,并且赋值给我们的sql语句
1、演示无参函数
例(1):返回我们男神表中男神的个数
然后我们调用:返回的便是我们男神表中男神的个数
2、演示有参函数
ps:当然设置局部变量和用户变量都是可以的,所以这里使用一下设置用户变量
例(1):根据我输入的女神名,返回她的电话号码
调用:查询柳岩的电话号码。
例(2) :创建函数实现,根据部门名,返回该部门的最高工资
调用函数:返回Mar部门的最高工资
二、函数的查看和删除
查看语法: show create function 已创建的函数名称;
就是查看函数的定义和状态
举例: 查看我们刚刚创建的函数hs3。
删除语法: drop function 已创建的函数名。
ps:将已创建的函数从库中删除
例子: 将我们刚刚创建的函数hs3删除。
ps:函数和流程控制一样,我们的函数中已经封装了的sql语句是不能更改的,所以如果想要更改我们一般是,将其删除,然后重新创建符合我们需要的新函数
**
Like the song quietly listening to far to see the one you like .
---------喜欢的歌静静听,喜欢的人远远看
**
小白终是踏上了这条不归路----小文的mysql学习笔记(22)--------函数相关推荐
- 小白终是踏上了这条不归路----小文的mysql学习笔记(1)
**这里真的是一个大佬云集的地方,作为刚刚学习的小白来这里向各位大佬取经,这是学习的时候做的笔记,有什么不对的地方还请兄弟们斧正.卑微小白终究是踏上了这条不归路阿,如果这篇笔记能给你带来帮助,还请大哥 ...
- 小白终是踏上了这条不归路----小文的mysql学习笔记目录
** 小文的学习笔记正在每日连载当中 为了方便观察,小文在练习的时候用的是图形化工具SQLyog然后用共用到两张表,employees表和girls表. 如果有需要该软件和上述两张表的兄弟可以 关注 ...
- 小白终是踏上了这条不归路----小文的mysql学习笔记(8)----分页查询
** 小白终是踏上了这条不归路----小文的mysql学习笔记(1) 小白终是踏上了这条不归路----小文的mysql学习笔记(2)----条件查询 小白终是踏上了这条不归路----小文的mysql学 ...
- 小白终是踏上了这条不归路----小文的mysql学习笔记(4)----常见的基本函数
** 小白终是踏上了这条不归路----小文的mysql学习笔记(1) 小白终是踏上了这条不归路----小文的mysql学习笔记(2)----条件查询 小白终是踏上了这条不归路----小文的mysql学 ...
- 小白终是踏上了这条不归路----小文的mysql学习笔记(17)----标识列(自增长列)
** 小白终是踏上了这条不归路----小文的mysql学习笔记(1) 小白终是踏上了这条不归路----小文的mysql学习笔记(2)----条件查询 小白终是踏上了这条不归路----小文的mysql学 ...
- 小白终是踏上了这条不归路----小文的mysql学习笔记(6)----连接查询-----等值连接、非等值连接、自链接、外连接、交叉连接
** 小白终是踏上了这条不归路----小文的mysql学习笔记(1) 小白终是踏上了这条不归路----小文的mysql学习笔记(2)----条件查询 小白终是踏上了这条不归路----小文的mysql学 ...
- 来北京十年,我为什么走上创业这条不归路
我是日事清的创始人刘磊,关于为什么要创业,感触颇多!因为2015年9月10号,是我来北京的第10年!也是我创业的第4个年头--但直到今年我做的项目日事清拿到数百万融资后,才觉得创业真的是一件痛苦却又幸 ...
- 【免费wifi上网软件】80后创业者的自白信——我和好基友走上创业这条不归路
又是一年毕业季,借着"wifi共享精灵感谢室友不杀之恩"这次活动的平台,总觉得作为一名毕业五年的学长,是应该给大家分享点可能会有用的东西. 首先,我要说:创业是条不归路,绝非耸人听 ...
- vuex(用了vue就上了一条不归路的贼船)
一.Vuex是干什么用的? 它是用于对复杂应用进行状态管理用的(官方说法是它是一种状态管理模式). "杀鸡不用宰牛刀".对于简单的项目,根本用不着Vuex这把"宰牛刀&q ...
最新文章
- 收藏版超全机器学习资料合集
- 华为为什么计算机停止运行,华为云电脑干嘛用的-为什么停止服务运营-乖乖手游网...
- Java 11都有哪些新特性?
- Kinect安装与配置(openNI2)
- CSS块级元素、内联元素概念
- Confluence wiki 使用记录
- Java 并发编程AQS基本介绍
- Spring Boot 集成 GRPC
- 单片机重要组成部分还有什么,引脚封装分布知识讲解(二)
- Android更新主线程UI的两种方式handler与runOnUiThread()
- 对自己编译的文件(exe/dll)进行签名的实践(Windows)
- oracle池式连接超时,c# – Oracle Data Provider for .NET:连接请求超时
- 录音文件下载_录音啦(文字语音转换)软件安装教程
- 王道计算机网络 电子版,2021王道.考研复习指导.数据结构.操作系统.计算机组成原理.计算机网络.计算机考研PDF电子版无水印图...
- 执行maven install 报如下错是什么原因呢?
- 如何避开微信小程序的审核机制(实测有效)
- php模板生成pdf,PHP生成PDF
- 恋恋山城 Jean de Florette (1986) 男人的野心 / 弗洛莱特的若望 / 让·德·弗罗莱特 / 水源 下一部 甘泉,玛侬...
- [老码团队]Swift中的协议 - 用协议来实现委托模式
- P106双N卡 自动调用方案
热门文章
- mybatis-plus设置某个字段可以为空
- ”核高基“重大专项造成体制浪费就应该取消
- OC语言——基本语法和思想
- html居中小圆点点怎么打出来,目录的点怎么打 WORD目录里的点点怎么打
- 洛谷:玩具谜题,C语言
- 参考一:双缝干涉与波长测量
- 在什么情况下,“ git pull”会有害吗?
- ssd的smt_联合评测: Optane SSD 在SmartX 超融合 Oracle 场景下的性能表现
- C#使用FFmpeg的总结
- 输入的字与系统编码不符_基于小字符集藏文拉丁转写系统的设计与实现