详解数据库_MySQL: mysql函数
一.内置函数
1.数学函数
rand() | round(num) | ceil(num) | floor(num) |
---|---|---|---|
随机 | 四舍五入 | 向上取整 | 向下取整 |
2.字符串函数
length()字节长度
char_length()字符长度
ucase()大写
lcase()小写
concat(字符,…,字符n)连接字符串
replace(字符串,旧字符,新字符)字符串替换
截取字符串
left(字符串,截取长度)
right(字符串,截取长度)
substring(字符串,开始位置,截取长度)#包含开始位置
mysql>selectleft('123456',4); +------------------+ |left('123456',4)| +------------------+ |1234| +------------------+ 1rowinset(0.00sec) mysql>selectright('123456',4); +-------------------+ |right('123456',4)| +-------------------+ |3456| +-------------------+ 1rowinset(0.00sec) mysql>selectsubstring('123456',2,4); +-------------------------+ |substring('123456',2,4)| +-------------------------+ |2345| +-------------------------+ 1rowinset(0.00sec)
3.日期函数
now() | unix_timestamp() | from_unixtime() |
---|---|---|
当前时间 | 时间戳 | 格式化时间戳 |
mysql>selectnow(); +---------------------+ |now()| +---------------------+ |2019-03-1614:55:42| +---------------------+ 1rowinset(0.00sec) mysql>selectunix_timestamp(); +------------------+ |unix_timestamp()| +------------------+ |1552719356| +------------------+ 1rowinset(0.00sec) mysql>selectfrom_unixtime(1552719356); +---------------------------+ |from_unixtime(1552719356)| +---------------------------+ |2019-03-1614:55:56| +---------------------------+ 1rowinset(0.00sec)
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>selectif(null,1,2); +--------------+ |if(null,1,2)| +--------------+ |2| +--------------+ 1rowinset(0.00sec) mysql>selectif(1,0,2); +-----------+ |if(1,0,2)| +-----------+ |0| +-----------+ 1rowinset(0.00sec)
2).语法:IFNULL(数据,值2)#判断指定数据是否为null:null-值2,非null-本身
mysql>selectifnull(0,123); +---------------+ |ifnull(0,123)| +---------------+ |0| +---------------+ 1rowinset(0.00sec) mysql>selectifnull('a',123); +-----------------+ |ifnull('a',123)| +-----------------+ |a| +-----------------+ 1rowinset(0.00sec)
二.自定义函数
语法:
#修改结束符 delimiter// createfunction函数名(参数名类型,...,参数名n类型n)returns返回数据类型 begin #SQL语句 return返回值; end// delimiter; #调用 select函数名();
输出"helloworld"(不带参数的函数)
#判断函数是否存在,存在就删除 dropfunctionifexistsf1; delimiter// createfunctionf1()returnsvarchar(30) begin return'helloworld'; end// delimiter; selectf1(); +-------------+ |f1()| +-------------+ |helloworld| +-------------+
传递两个整型求和(带参数的函数)
dropfunctionifexistsf2; delimiter// createfunctionf2(num1int,num2int)returnsint begin returnnum1+num2; end// delimiter; selectf2(8,2); +----------+ |f2(8,2)| +----------+ |10| +----------+
三.自定义函数相关语法
显示所有的函数:showfunctionstatus\G#输出的内容很多
删除函数:dropfunction[ifexists]函数名;
四.存储过程和函数的区别
存储过程可以返回多个值,而自定义函数只能返回一个值
存储过程一般独立执行,而函数往往作为其他SQL语句的一部分来使用
以上所述是小编给大家介绍的数据库_MySQL:mysql函数详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。