加入收藏 | 设为首页 | 会员中心 | 我要投稿 源码门户网 (https://www.92codes.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql函数的示例分析

发布时间:2022-02-10 12:28:14 所属栏目:MySql教程 来源:互联网
导读:这篇文章将为大家详细讲解有关mysql函数的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 一.内置函数 1.数学函数 rand() round(num) ceil(num) floor(num) 随机 四舍五入 向上取整 向下取整 2.字符串函数
       这篇文章将为大家详细讲解有关mysql函数的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
 
一.内置函数
 
1.数学函数
 
rand() round(num) ceil(num) floor(num)
随机 四舍五入 向上取整 向下取整
2.字符串函数
 
length() 字节长度
char_length() 字符长度
 
ucase() 大写
lcase() 小写
 
concat(字符,…,字符n) 连接字符串
 
replace(字符串,旧字符,新字符)字符串替换
 mysql函数的示例分析
截取字符串
left(字符串,截取长度)
right(字符串,截取长度)
substring(字符串,开始位置,截取长度) #包含开始位置
 
mysql> select left('123456',4);
+------------------+
| left('123456',4) |
+------------------+
| 1234    |
+------------------+
1 row in set (0.00 sec)
 
mysql> select right('123456',4);
+-------------------+
| right('123456',4) |
+-------------------+
| 3456    |
+-------------------+
1 row in set (0.00 sec)
 
mysql> select substring('123456',2,4);
+-------------------------+
| substring('123456',2,4) |
+-------------------------+
| 2345     |
+-------------------------+
1 row in set (0.00 sec)
3.日期函数
 
now() unix_timestamp() from_unixtime()
当前时间 时间戳 格式化时间戳
mysql> select now();
+---------------------+
| now()    |
+---------------------+
| 2019-03-16 14:55:42 |
+---------------------+
1 row in set (0.00 sec)
 
mysql> select unix_timestamp();
+------------------+
| unix_timestamp() |
+------------------+
|  1552719356 |
+------------------+
1 row in set (0.00 sec)
 
mysql> select from_unixtime(1552719356);
+---------------------------+
| from_unixtime(1552719356) |
+---------------------------+
| 2019-03-16 14:55:56  |
+---------------------------+
1 row in set (0.00 sec)
year() month() day() hour() minute() second()
年 月 日 时 分 秒
mysql> select
 -> year(now()) as '年',
 -> month(now()) as '月',
 -> day(now()) as '日',
 -> hour(now()) as '时',
 -> minute(now()) as '分',
 -> second(now()) as '秒';
+------+------+------+------+------+------+
| 年 | 月 | 日 | 时 | 分 | 秒 |
+------+------+------+------+------+------+
| 2019 | 3 | 16 | 14 | 59 | 12 |
+------+------+------+------+------+------+
4.加密函数
 
md5(数据)
password(数据)
 
5.条件判断函数
 
1).语法: if(数据,值1,值2) #判断指定数据是否为真:真-值1,假-值2
 
mysql> select if(null,1,2);
+--------------+
| if(null,1,2) |
+--------------+
|   2 |
+--------------+
1 row in set (0.00 sec)
 
mysql> select if(1,0,2);
+-----------+
| if(1,0,2) |
+-----------+
|   0 |
+-----------+
1 row in set (0.00 sec)
2).语法: IFNULL(数据,值2) #判断指定数据是否为null:null-值2,非null-本身
 
mysql> select ifnull(0,123);
+---------------+
| ifnull(0,123) |
+---------------+
|    0 |
+---------------+
1 row in set (0.00 sec)
 
mysql> select ifnull('a',123);
+-----------------+
| ifnull('a',123) |
+-----------------+
| a    |
+-----------------+
1 row in set (0.00 sec)
二.自定义函数
 
语法:
 
#修改结束符
delimiter //
create function 函数名(参数名 类型,...,参数名n 类型n) returns 返回数据类型
begin
#SQL语句
return 返回值;
end //
delimiter ;
 
#调用
select 函数名();
输出"hello world"(不带参数的函数)
 
#判断函数是否存在,存在就删除
drop function if exists f1;
 
delimiter //
create function f1() returns varchar(30)
begin
 return 'hello world';
end //
delimiter ;
 
select f1();
 
+-------------+
| f1()  |
+-------------+
| hello world |
+-------------+
传递两个整型求和(带参数的函数)
 
drop function if exists f2;
 
delimiter //
 
create function f2(num1 int, num2 int) returns int
begin
  return num1 + num2;
end //
delimiter ;
 
select f2(8, 2);
 
+----------+
| f2(8, 2) |
+----------+
|  10 |
+----------+
三.自定义函数相关语法
 
显示所有的函数:show function statusG #输出的内容很多
 
删除函数:drop function [if exists] 函数名;
 
四.存储过程和函数的区别
 
存储过程可以返回多个值,而自定义函数只能返回一个值
 
存储过程一般独立执行,而函数往往作为其他SQL语句的一部分来使用
 
关于“mysql函数的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

(编辑:源码门户网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!