这篇文章将为大家详细讲解有关mysql函数的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
创新互联公司主要从事网页设计、PC网站建设(电脑版网站建设)、wap网站建设(手机版网站建设)、响应式网站设计、程序开发、网站优化、微网站、小程序设计等,凭借多年来在互联网的打拼,我们在互联网网站建设行业积累了丰富的成都网站设计、做网站、网站设计、网络营销经验,集策划、开发、设计、营销、管理等多方位专业化运作于一体。一.内置函数
1.数学函数
rand() | round(num) | ceil(num) | floor(num) |
---|---|---|---|
随机 | 四舍五入 | 向上取整 | 向下取整 |
2.字符串函数
length() 字节长度
char_length() 字符长度
ucase() 大写
lcase() 小写
concat(字符,…,字符n) 连接字符串
replace(字符串,旧字符,新字符)字符串替换
截取字符串
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 status\G #输出的内容很多
删除函数:drop function [if exists] 函数名;
四.存储过程和函数的区别
存储过程可以返回多个值,而自定义函数只能返回一个值
存储过程一般独立执行,而函数往往作为其他SQL语句的一部分来使用
关于“mysql函数的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。