Mysql总结3-mysql常用函数
来源:互联网 发布:手机免root数据恢复apk 编辑:程序博客网 时间:2024/06/01 10:28
1.数学函数
2 聚合函数
聚合函数,常用于GROUP BY从句的SELECT查询中
2.2 函数整理
2.2 用法举例
GROUP_CONCAT这个很实用:
SELECT t.sex, GROUP_CONCAT(t.name) FROM user_name t GROUP BY t.sexsex GROUP_CONCAT(t.name) ------结果如下:男 小刚,小强,小壮女 小花,小朵,小美
3 字符串函数
3.1 函数整理
3.2 用法举例
select CONCAT('11','22','33');//结果--> 112233 select CONCAT_WS(',','11','22','33');//结果--> 11,22,33 SELECT INSERT('abcdef',1,2,'xyz');//结果-->xyzcdef 注:a是1,b是2,从1开始替换2个字符,也就是ab2各字符替换为xyz SELECT FIND_IN_SET('b','a,b,c,d'); //结果-->2 SELECT FIND_IN_SET('b','a,b,c,d,b'); //结果-->2 SELECT FIND_IN_SET('f','a,b,c,d'); //结果-->0 SELECT LEFT('abcdef',3);//结果->abc SELECT POSITION('abc' IN 'aababdabcdabc');//7,注:5.7.11为POSITION(substr in str),是IN不是,号 SELECT QUOTE('d''abc');//结果'd\'abc' SELECT REPEAT('abc',3);//abcabcabc SELECT REVERSE('abcdef')//fedcba SELECT STRCMP('abc','edf');//-1 SELECT STRCMP('def','abc');//1 SELECT STRCMP('1','0');//1 SELECT STRCMP('0','1');//-1 SELECT STRCMP('aaa','aaa');//0 SELECT REPLACE('abcxyzdefxyz','xyz','mnt');//abcmntdefmnt
4 日期和时间函数
4.1 函数整理
1.DATE_SUB()和DATE_ADD()对应的keyword参数MICROSECONDSECONDMINUTEHOURDAYWEEKMONTHQUARTERYEARSECOND_MICROSECONDMINUTE_MICROSECONDMINUTE_SECONDHOUR_MICROSECONDHOUR_SECONDHOUR_MINUTEDAY_MICROSECONDDAY_SECONDDAY_MINUTEDAY_HOURYEAR_MONTH2.格式化的类型格式格式 描述%a 缩写星期名%b 缩写月名%c 月,数值%D 带有英文前缀的月中的天%d 月的天,数值(00-31)%e 月的天,数值(0-31)%f 微秒%H 小时 (00-23)%h 小时 (01-12)%I 小时 (01-12)%i 分钟,数值(00-59)%j 年的天 (001-366)%k 小时 (0-23)%l 小时 (1-12)%M 月名%m 月,数值(00-12)%p AM 或 PM%r 时间,12-小时(hh:mm:ss AM 或 PM)%S 秒(00-59)%s 秒(00-59)%T 时间, 24-小时 (hh:mm:ss)%U 周 (00-53) 星期日是一周的第一天%u 周 (00-53) 星期一是一周的第一天%V 周 (01-53) 星期日是一周的第一天,与 %X 使用%v 周 (01-53) 星期一是一周的第一天,与 %x 使用%W 星期名%w 周的天 (0=星期日, 6=星期六)%X 年,其中的星期日是周的第一天,4 位,与 %V 使用%x 年,其中的星期一是周的第一天,4 位,与 %v 使用%Y 年,4 位%y 年,2 位
4.2 举例
SELECT DATE_FORMAT(FROM_DAYS(TO_DAYS(NOW())-TO_DAYS(birthday)),'%Y')+0 AS age FROM employee;这样,如果Brithday是未来的年月日的话,计算结果为0。下面的SQL语句计算员工的绝对年龄,即当Birthday是未来的日期时,将得到负值。SELECT DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(birthday, '%Y') -(DATE_FORMAT(NOW(), '00-%m-%d') <DATE_FORMAT(birthday, '00-%m-%d')) AS age from employee
5 加密函数
6. 控制流函数
MySQL有4个函数是用来进行条件操作的,这些函数可以实现SQL的条件逻辑,允许开发者将一些应用程序业务逻辑转换到数据库后台
如:SELECT IFNULL(1,2), IFNULL(NULL,10),IFNULL(4*NULL,'false');NULLIF()函数将会检验提供的两个参数是否相等,如果相等,则返回NULL,如果不相等,就返回第一个参数。如:SELECT NULLIF(1,1),NULLIF('A','B'),NULLIF(2+3,4+1);和许多脚本语言提供的IF()函数一样,MySQL的IF()函数也可以建立一个简单的条件测试,这个函数有三个参数,第一个是要被判断的表达式,如果表达式为真,IF()将会返回第二个参数,如果为假,IF()将会返回第三个参数。如:SELECTIF(1<10,2,3),IF(56>100,'true','false');IF()函数在只有两种可能结果时才适合使用。然而,在现实世界中,我们可能发现在条件测试中会需要多个分支。在这种情况下,MySQL提供了CASE函数,它和PHP及Perl语言的switch-case条件例程一样。CASE函数的格式有些复杂,通常如下所示:CASE [expression to be evaluated]WHEN [val 1] THEN [result 1]WHEN [val 2] THEN [result 2]WHEN [val 3] THEN [result 3]......WHEN [val n] THEN [result n]ELSE [default result]END
7. 格式化函数
8. 类型转化函数
SELECT CAST(NOW() AS SIGNED INTEGER),CURDATE()+0;SELECT 'f'=BINARY 'F','f'=CAST('F' AS BINARY);
9. 系统信息函数
SELECT DATABASE(),VERSION(),USER();SELECTBENCHMARK(9999999,LOG(RAND()*PI()));#该例中,MySQL计算LOG(RAND()*PI())表达式9999999次。
阅读全文
1 0
- Mysql总结3-mysql常用函数
- Mysql常用函数总结
- MYSQL常用函数总结
- MySql常用函数总结
- MySQL常用函数总结
- MySql常用函数总结
- MySQL常用数学函数总结
- Mysql 常用函数总结(数学函数)
- Mysql 常用函数总结(其他函数)
- PHP中的MYSQL常用函数总结
- MySQL常用类型转换函数总结
- 初学mysql常用函数总结(1)
- MySql 常用日期时间函数总结
- PHP中的MYSQL常用函数总结
- Mysql| Mysql常用函数汇总
- Mysql 常用函数总结(字符串操作函数)
- Mysql 常用函数总结(日期操作函数)
- Mysql 常用函数总结(加密解密函数)
- 求 n!
- js实现rem布局
- 微信小程序的if标签和for循环
- [UnityShader基础]基本概念
- Generics
- Mysql总结3-mysql常用函数
- 微信小程序事件
- JAVA 面试重点知识总结
- 198. House Robber
- 设计模式之工厂模式(个人理解)
- JS实现input上传图片时显示缩略图
- Eric6与pyqt5学习笔记 3【水平/垂直,网格,窗体四大类布局】
- 设计模式六大原则(6):开闭原则
- UIAutomator2.0详解(UIDevice篇----Screen操作)