一: 数据库函数
1.1: 数学函数
数学函数 描述 abs(x) 返回 x 的绝对值 绝对值 rand() 返回 0 到 1 的随机数 rand边缘 mod(x,y) 返回 x 除以 y 以后的余数 取余 power(x,y) 返回 x 的 y 次方 power快速前进 round(x) 返回离 x 最近的整数 round整数 round(x,y) 保留x 的y 位小数四舍五入后的值 sqrt(x) 返回 x 的平方根 sqrt 平方根 truncate(x,y) 返回数字 x 截断为 y 位小数的值 truncate 截取 ceil(x) 返回大于或等于 x 的最小整数 ceil装天花板 floor(x) 返回小于或等于 x 的最大整数 floor 地板 greatest(x1,x2...) 返回集合中最大的值 least(x1,x2...) 返回集合中最小的值1.2: 聚合函数
聚合函数 描述 avg() 返回指定列的平均值 avg平均值 count() 返回指定列中非 NULL 值的个数 count计数 min() 返回指定列的最小值 max() 返回指定列的最大值 sum(x) 返回指定列的所有值之和1.3: 字符串函数
字符串函数 描述 length(x) 返回字符串 x 的长度 length 长度 trim() 返回去除指定格式的值 trim 修剪,截除,去除空格只能去除两端的空格 concat(x,y) 将提供的参数 x 和 y 拼接成一个字符串 concat 合并 upper(x) 将字符串 x 的所有字母变成大写字母 upper上面的 lower(x) 将字符串 x 的所有字母变成小写字母 lower 下面的 left(x,y) 返回字符串 x 的前 y 个字符 向左取值 right(x,y) 返回字符串 x 的后 y 个字符 向右取值 repeat(x,y) 将字符串 x 重复 y 次 repeat 重复 space(x) 返回 x 个空格 space 空间,空格 replace(x,y,z) 将字符串 z 替代字符串 x 中的字符串 y replace 替换 strcmp(x,y) 比较 x 和 y,返回的值可以为-1,0,1 转化为ASCII码比较 strcmp 比较字符串 substring(x,y,z) 获取从字符串 x 中的第 y 个位置开始长度为 z 的字符串 substring截取字符串 reverse(x) 将字符串 x 反转 reverse 取反 ,反转1.4: 日期时间函数
字符串函数 描述 curdate() 返回当前时间的年月日 取现在日期 curtime() 返回当前时间的时分秒 取现在时间 now() 返回当前时间的日期和时间 现在是什么时候 month(x) 返回日期 x 中的月份值 week(x) 返回日期 x 是年度第几个星期 hour(x) 返回 x 中的小时值 minute(x) 返回 x 中的分钟值 second(x) 返回 x 中的秒钟值 dayofweek(x) 返回 x 是星期几,1 星期日,2 星期一 dayofmonth(x) 计算日期 x 是本月的第几天 dayofyear(x) 计算日期 x 是本年的第几天1.5: 存储过程
//格式 #定义存储过程
delimiter $$ create procedure存储过程名(in 参数名 参数类型) begin #定义变量 declare变量名变量类型 #变量赋值 set 变量名 = 值 sql语句1; sql语句2; .. sql语句n; end $$ delimiter ;
#调用存储过程 call存储过程名(实际参数); #查询存储过程 show procedure status where db=‘数据库‘; #删除存储过程 drop procedure存储过程名;
示例:1
mysql> delimiter $$ mysql> create procedure myrole() //创建存储过程,名字为myrole -> begin -> select name,score from accp; -> end $$ Query OK, 0 rows affected (0.00 sec) mysql> delimiter ; mysql> call myrole();
示例:2
mysql> delimiter $$ mysql> create procedure myschool(in my_name varchar(10)) -> begin -> select name score from accp where name=my_name; -> end$$ Query OK, 0 rows affected (0.01 sec) mysql> delimiter ; mysql> show procedure status where db=‘school‘;
示例3:
mysql> delimiter $$ mysql> create procedure myupdate(in my_score decimal(5,2)) -> begin -> declare hob int(3); -> if my_score >= 80 then -> set hob = 1; -> else -> set hob = 2; -> end if; -> update accp set score=my_score,hobby=hob where name=‘zhangsan‘; -> end$$ Query OK, 0 rows affected (0.06 sec) //修改名为张三的分数和hobby,修改zhangsan的hobby=2,score=75 mysql> delimiter ; mysql> call myupdate(75);
数据库管理与高可用 第五章数据库函数与创建数据库过程
标签:space 数据库管理 日期 开始 平方根 重复 四舍五入 mysql $$
查看更多关于数据库管理与高可用 第五章数据库函数与创建数据库过程的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did118423