mysql 5.0创建函数,MySQL存储过程与函数_gw

MySQL存储过程与函数

函数

数学函数

abs(x):返回x的绝对值

81693b1481932edc2cb5a63a8b0c4e33.png

rand():返回0到1的随机数(0-0.9999…,1是取不到的)

1e99f90eef5a1506b873c96180b64234.png

mod(x,y):返回x除以y以后的余数

ac158112d99d1b04ae3101033b15d2eb.png

-power(x,y):返回x的y次方

d11c673835d77147b1f2dbf351f4fec6.png

round(x):返回离x最近的整数(四舍五入,只看小数点后第一位)

14b694ace14914590e3aec08ce527dd4.png

round(x,y):保留x的y位小数四舍五入后的值

64c97d8a564649f498b33af8533071f0.png

sqrt(x):返回x的平方根

ca56955da2117851bde3cbc84e2938ea.png

truncate(x,y):返回数字x截断为y位小数的值

d4f414ffecf7f400d590a8abbb045127.png

ceil(x):返回大于或等于x的最小整数(向上取整数)

26e82863969d24c522dc82609483f622.png

floor(x):返回小于或等于x的最大整数(向下取整数)

b2d1a66e8e6bfeb92878e41c5899c2a0.png

greatest(x1,x2…):返回集合中最大的值

de1b1adfe16349184c5ecbb310fe85f9.png

least(x1,x2…):返回集合中最小的值

8f772f4e1afc6616495da7b867cb94de.png

聚合函数

1、对表中数据记录进行集中概括而设计的一类函数

2、常用的聚合函数(只会产生一个值)

avg(字段名) 返回指定字段的平均值

9449ab13693321bc2294db23c4a73406.png

count(字段名) 返回指定字段中非NULL值的个数

78019e3946d680787a39edc649c81dba.png

min(字段名) 返回指定字段的最小值

e9284b313e03d7d3bf3bfee555448fec.png

max(字段名) 返回指定字段的最大值

c33eeeb9394dbd6e64ae90bcfb483ee7.png

sum(字段名) 返回指定字段的所有值之和

209b2e01337cb22632a56e304f40e34d.png

字符串函数

length(x):返回字符串x的长度(空格也算)

a3d742a8d10062baa10f7e0c15c7102e.png

trim():返回去除指定格式的值(只能去除前后的空格)

903a63b6e1bc5e4bc6023d81e64e60df.png

concat(x,y):将提供的参数x和y拼接成一个字符串

c55ab2b3202d3f5653bf5028a583d27a.png

upper(x):将字符串x的所有字母变成大写字母

582f4f10d3a4332c3c859d7c1c1889c5.png

lower(x):将字符串x的所有字母变成小写字母

256058f171de490717442f86b7f53c83.png

left(x,y):返回字符串x的前y个字符

aca89df2899ac1023af7a6c3677d1539.png

right(x,y):返回字符串x的后y个字符

eb0fa18fa64d8ebebba5e934fd3a6c75.png

repeat(x,y):将字符串x重复y次

9545fbbf7c42a8273e4df6a8c5c07fc4.png

space(x):返回x个空格(结合concat使用)

4109cd9c5fe149f942180cca6ffca37a.png

replace(x,y,z):将字符串z替代字符串x中的字符串y

73fe609bd71009440f24142be7843d83.png

strcmp(x,y):比较x和y,返回的值可以为-1

75eb03c35578676c35e744c45b4a9d54.png

substring(x,y,z):获取从字符串x中的第y个位置开始长度为z的字符串

格式:substring(完整字符串,起始位置,长度); #起始位置从1开始

2aa512a8ddb78dabe876a205ae2f6a89.png

reverse(x):将字符串x反转

09fe34ded56f2dff798b6ed2c3ff76b9.png

日期时间函数

curdate():返回当前时间的年月日

eae44846db28fadbd72bc55ab242fcd1.png

curtime():返回当前时间的时分秒

1b15608017769c0a2045b786915884cb.png

now():返回当前时间的日期和时间

c7ab31fab6721fd7edcb0aaefcbf1398.png

month(x):返回日期x中的月份值

6507a4046dbf49ca4c3f2aa0ab49df21.png

hour(x):返回x中的小时值

7cc197d88219237a34d757fa1ae28b81.png

minute(x):返回x中的分钟值

bbdb07a165f10af40c2989dc3d887660.png

second(x):返回x中的秒钟值

7cfa5e3d8b62bac6827218f6a742d651.png

dayofweek(x):返回x是星期几,1星期日,2星期一,3星期二…

26338dec0f861a184cddc136fc2d9c4b.png

dayofmonth(x):计算日期x是本月的第几天

716fb3fbd58eadfdb456365f49e55efa.png

dayofyear(x):计算日期x是本年的第几天

1dd4fd39e52fd6f6d7fc0cb158fe09e1.png

MySQL存储过程

存储过程简介

1、从 5.0 版本才开始支持

2、是一组为了完成特定功能的SQL语句集合(封装)

3、比传统SQL速度更快、执行效率更高

4、存储过程的优点

(1)执行一次后,会将生成的二进制代码驻留缓冲区(便于下次执行),提高执行效率

(2)SQL语句加上控制语句的集合,灵活性高

(3)在服务器端存储,客户端调用时,降低网络负载

(4)可多次重复被调用,可随时修改,不影响客户端调用

(5)可完成所有的数据库操作,也可控制数据库的信息访问权限

5、为什么要用存储过程?

(1)减轻网络负载;

(2)增加安全性

创建存储过程

1、使用create procedure语句创建存储过程

2、参数分为

输入参数:in

输出参数:out

输入/输出参数:inout

3、存储过程的主体部分,被称为过程体;以begin开始,以end$$结束

4、具体格式

delimiter $$

create procedure 存储过程名(in 参数名 参数类型)

begin

#定义变量

declare 变量名 变量类型

#变量赋值

set 变量名 = 值

sql 语句1;

sql 语句2;

...

end$$

delimiter ;(有空格)

举例:

mysql> delimiter $$

mysql> create procedure test ()

-> begin select * from test;

-> end $$

Query OK, 0 rows affected (0.00 sec)

mysql>

05636e8d2ad42f725e5be04ac0cb76ee.png

调用存储过程

call 存储过程名(实际参数);

举例:

mysql> delimiter ;

mysql> call test;

b4e52b6d181207631233298963650592.png

查询存储过程

show procedure status where db=‘数据库’;

修改存储过程

存储过程的修改分为特征的修改和业务内容的修改。

特征的修改语法结构如下:

alter procedure 存储过程名 [ … ]

删除存储过程

删除存储过程的语法:

drop {procedure|function|if exits}

7257b06c2633e2ceeebd2e981ff5d0cf.png

标签:gw,返回,存储,函数,MySQL,字符串,过程,procedure

来源: https://blog.csdn.net/qq_39489548/article/details/112167124

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值