博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
常用函数、文本处理函数、日期函数
阅读量:5291 次
发布时间:2019-06-14

本文共 2609 字,大约阅读时间需要 8 分钟。

1、CONCAT(str1,str2,...)

返回结果为连接参数产生的字符串。如有任何一个参数为NULL,则返回值为 NULL。

2、CONCAT_WS(separator,str1,str2,...)

第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数。

3、GROUP_CONCAT(expr)分组拼接函数

GROUP_CONCAT([DISTINCT] 要连接的字段 [ORDER BY ASC/DESC 排序字段] [SEPARATOR '分隔符'])。

和GROUP BY配合使用。

4、ISNULL(expr)

exper是NULL,则返回真,否则返回假。

5、IFNULL(expr1,expr2)

假如expr1不为NULL,则IFNULL() 的返回值为 expr1; 否则其返回值为expr2。

6、FORMAT(X,D)

将X格式化成D位小数的数,可以格式化数据为整数或者浮点数,具有四舍五入的功能。

 

7、SUBSTRING_INDEX(str,delim,count)

SUBSTRING_INDEX(被截取字段,关键字,关键字出现的次数)

如果count是正数,那么就是从左往右数,第N个分隔符的左边的全部内容;相反,如果是负数,那么就是从右边开始数,第N个分隔符右边的所有内容。

 

8、常用的文本处理函数

函数 说明 示例 示例结果
LEFT(str,len) 返回串左边的len个字符  SELECT LEFT('abcdef',2);  ab
LENGTH(str) 返回串的长度   SELECT LENGTH('abcdef');  6
LOCATE(substr,str) 找出串的一个子串,存在则返回第一个出现的位置(位置从1开始计算),不存在返回0  SELECT LOCATE('abc','abcabc');  1
LOWER(str) 将串转换为小写   SELECT LOWER('ABC');  abc
LTRIM(str) 去掉串左边的空格   SELECT LTRIM('    QAQ');  QAQ
RIGHT(str,len) 返回串右边的len个字符   SELECT RIGHT('abcdef', 2);  ef
RTRIM(str) 去掉串右边的空格   SELECT RTRIM('QAQ   ');  QAQ
SOUNDEX(str) 返回穿的SOUNDEX值   SELECT SOUNDEX('abcdef');  A1231
SUBSTRING(str,pos) 返回从位置pos开始到末尾的子串 (位置从1开始计算)  SELECT SUBSTRING('abcdef',2);  bcdef
 UPPER(str) 将串转换为大写   SELECT UPPER('abc');  ABC
 TRIM(str) 去掉串左右两边的空格   SELECT TRIM(' QAQ ');  QAQ

9、常用的日期和时间处理函数

函数 说明 示例 示例结果
ADDDATE(date,INTERVAL expr unit) 增加一个日期(天、周等)

SELECT ADDDATE('2018-12-09 07:00:00',INTERVAL 1 HOUR);

2018-12-09 08:00:00
ADDTIME(expr1,expr2) 增加一个时期(时、分等) SELECT ADDTIME('2018-12-09 07:00:00', '07:00:00:00'); 2018-12-09 14:00:00
CURDATE() 返回当前日期 SELECT CURDATE(); 2018-12-09
CURTIME() 返回当前时间 SELECT CURTIME(); 17:36:21
DATE(expr) 返回日期时间的日期部分 SELECT DATE('2018-12-09 07:00:00'); 2018-12-09
DATEDIFF(expr1,expr2) 计算两个日期之差 SELECT DATEDIFF('2018-12-09 07:00:00','2018-12-10 10:30:00'); -1
DATE_ADD(date,INTERVAL expr unit) 高度灵活的日期运算函数 SELECT DATE_ADD('2018-12-09 07:00:00',INTERVAL 5 DAY) 2018-12-14 07:00:00
DATE_FORMAT(date,format) 返回一个格式化的日期或时间串 SELECT DATE_FORMAT('2018-12-09 07:00:00','%Y-%m-%d %H:%i:%S'); 2018-12-09 07:00:00
DAY(expr) 返回一个日期的天数部分 SELECT DAY('2018-12-09 07:00:00'); 9
DAYOFWEEK(date) 对于一个日期,返回对应的礼拜几  SELECT DAYOFWEEK('2018-12-09 07:00:00'); 1
HOUR(expr) 返回一个时间的小时部分  SELECT HOUR('2018-12-09 07:00:00'); 7
MINUTE(expr) 返回一个时间的分钟部分  SELECT MINUTE('2018-12-09 07:30:25'); 30
MONTH(expr) 返回一个时间的月份部分  SELECT MONTH('2018-12-09 07:30:25'); 12
NOW() 返回当前日期和时间  SELECT NOW(); 2018-12-09 18:44:02
SECOND(expr) 返回一个时间的秒部分  SELECT SECOND('2018-12-09 07:30:25'); 25
TIME(expr) 返回一个日期的时间部分  SELECT TIME('2018-12-09 07:30:25'); 07:30:25
YEAR(date) 返回一个日日的年份部分  SELECT YEAR('2018-12-09 07:30:25'); 2018

转载于:https://www.cnblogs.com/ACGame/p/10091767.html

你可能感兴趣的文章
实现自己的脚本语言ngscript之四:代码生成
查看>>
在Android中使用FlatBuffers(上篇)
查看>>
.net 基础面试题二
查看>>
leetcode 347. Top K Frequent Elements
查看>>
nil、Nil、NULL和NSNull的理解
查看>>
FTP上传下载文件
查看>>
maven build无反应,报terminated
查看>>
关于View控件中的Context选择
查看>>
mediaplayer state
查看>>
C# DataTable 详解
查看>>
2018icpc徐州OnlineA Hard to prepare
查看>>
R语言-rnorm函数
查看>>
Spark的启动进程详解
查看>>
Java 字符终端上获取输入三种方式
查看>>
javascript 简单工厂
查看>>
java调用oracle存储过程,返回结果集
查看>>
使用命令创建数据库和表
查看>>
数据库的高级查询
查看>>
HttpClient(一)-- HelloWorld
查看>>
dump调试函数
查看>>