文本处理函数
常用函数
函数 | 说明 |
---|---|
Left() | 返回串左边的字符 |
Length() | 返回串的长度 |
Locate() | 找出串的一个子串 |
Lower() | 将串转换为小写 |
LTrim() | 去掉串左边的空格 |
Right() | 返回串右边的字符 |
RTrim() | 去掉串右边的空格 |
Soundex() | 返回串的SOUNDEX值 |
SubString() | 返回子串的字符 |
Upper() | 将串转换为大写 |
实例
Left()
从左边开始,截取前两位字符
SELECT LEFT("123456",2);
Right()
从右边开始,截取后两位字符
SELECT RIGHT("123456",2);
Length()
返回字符串"1234"的长度,长度为4
SELECT LENGTH("1234");
Locate()
查看子串"12"在字符串"33312345612"中第一次出现的位置,结果为4
SELECT LOCATE("12","33312345612");
从第6位开始查找,查看子串"12"在字符串"33312345612"中第一次出现的位置,结果为10
SELECT LOCATE("12","33312345612",6);
Lower()
将字符串的所有大写字母转化为小写
SELECT LOWER("aBcDe");
Upper()
将字符串的所有小写字母转化为大写
SELECT UPPER("aBcDe");
LTrim()
去掉字符串左边的空格
SELECT LTRIM(" abc ");
RTrim()
去掉字符串右边的空格
SELECT RTRIM(" abc ");
Trim()
去掉字符串前后的空格
SELECT TRIM(" abcd ");
Soundex()
SubString()
截取从第三位开始的及后面的字符串,下面两个sql语句的结果是一样的
SELECT SUBSTRING("123456",3);
SELECT SUBSTRING("123456" FROM 3);
截取从第二位开始的及后面的字符串,且截取的字符串长度为2
SELECT SUBSTRING("123456",2,2);
SELECT SUBSTRING("123456" FROM 2 FOR 2);
日期和时间处理函数
常用函数
函数 | 说明 |
---|---|
AddDate() | 增加一个日期(天、周等) |
AddTime() | 增加一个时间(时、分等) |
CurDate() | 返回当前日期 |
CurTime() | 返回当前时间 |
Date() | 返回日期时间的日期部分 |
DateDiff() | 计算两个日期之差 |
Date_Add() | 高度灵活的日期运算函数 |
Date_Format() | 返回一个格式化的日期或时间串 |
Day() | 返回一个日期的天数部分 |
DayOfWeek() | 对于一个日期,返回对应的星期几 |
Hour() | 返回一个时间的小时部分 |
Minute() | 返回一个时间的分钟部分 |
Month() | 返回一个日期的月份部分 |
Now() | 返回当前日期和时间 |
Second() | 返回一个时间的秒部分 |
Time() | 返回一个日期时间的时间部分 |
Year() | 返回一个日期的年份部分 |
实例
AddDate()
给日期加两天
SELECT ADDDATE("2021-09-17 10:34:11",2);
给日期加一天或周或月或年
#加一天
SELECT ADDDATE("2021-09-17 10:34:11",INTERVAL 1 DAY);
#加一周
SELECT ADDDATE("2021-09-17 10:34:11",INTERVAL 1 WEEK);
#加一月
SELECT ADDDATE("2021-09-17 10:34:11",INTERVAL 1 MONTH);
#加一年
SELECT ADDDATE("2021-09-17 10:34:11",INTERVAL 1 YEAR);
AddTime()
给日期加1天1小时1分1秒
SELECT ADDTIME("2021-09-17 10:34:11","1 1:1:1");
CurDate()
返回当前日期
SELECT CURDATE();
CurTime()
返回当前时间
SELECT CURTIME();
Date()
返回日期时间的日期部分
SELECT DATE("2021-09-17 10:34:11");
DateDiff()
返回两个日期之差(结果为天数),前面的日期减去后面的
SELECT DATEDIFF("2022-09-19 11:34:11","2021-09-18 10:34:11");
Date_Add()
高度灵活的日期运算函数,给一个时间添加秒、分、小时、天、月、年
#加1天
SELECT DATE_ADD("2021-09-17 10:34:11",INTERVAL 1 DAY);
#加1周
SELECT DATE_ADD("2021-09-17 10:34:11",INTERVAL 1 WEEK);
#加1月
SELECT DATE_ADD("2021-09-17 10:34:11",INTERVAL 1 MONTH);
#加1年
SELECT DATE_ADD("2021-09-17 10:34:11",INTERVAL 1 YEAR);
#加1秒
SELECT DATE_ADD("2021-09-17 10:34:11",INTERVAL 1 SECOND);
#加1分
SELECT DATE_ADD("2021-09-17 10:34:11",INTERVAL 1 MINUTE);
#加1小时
SELECT DATE_ADD("2021-09-17 10:34:11",INTERVAL 1 HOUR);
Date_Format()
格式化时间,第一个参数为要格式化的时间,第二个参数为格式
SELECT DATE_FORMAT("2021-09-17 10:34:11","%Y年%m月%d日 %H时%i分%s秒");
以下是可用于构建日期格式字符串的说明符及其含义

以下是一些常用的日期格式字符串

Day()
返回一个日期的天数部分
SELECT DAY("2021-09-17 10:34:11");
DayOfWeek()
对于一个日期,返回对应的星期几
SELECT DAYOFWEEK("2021-09-17 10:34:11");
Hour()
返回一个时间的小时部分
SELECT HOUR("2021-09-17 10:34:11");
Minute()
返回一个时间的分钟部分
SELECT MINUTE("2021-09-17 10:34:11");
Month()
返回一个日期的月份部分
SELECT MONTH("2021-09-17 10:34:11");
Now()
返回当前日期和时间
SELECT NOW();
Second()
返回一个时间的秒部分
SELECT SECOND("2021-09-17 10:34:11");
Time()
返回一个日期时间的时间部分
SELECT TIME("2021-09-17 10:34:11");
Year()
返回一个日期的年份部分
SELECT YEAR("2021-09-17 10:34:11");
数值处理函数
常用函数
函数 | 说明 |
---|---|
Abs() | 返回一个数的绝对值 |
Cos() | 返回一个角度的余弦 |
Exp() | 返回一个数的指数值 |
Mod() | 返回除操作的余数 |
Pi() | 返回圆周率 |
Rand() | 返回一个随机数 |
Sin() | 返回一个角度的正弦 |
Sqrt() | 返回一个数的平方根 |
Tan() | 返回一个角度的正切 |
实例
Abs()
返回一个数的绝对值
SELECT ABS(-1);
Cos()
返回一个角度的余弦
SELECT COS(45);
Exp()
返回一个数的指数值,即:e的多少次方,e约等于2.718281828
SELECT EXP(2);
Mod()
返回除操作的余数,前面参数除以后面的参数
SELECT MOD(10,3);
Pi()
返回圆周率
SELECT PI();
Rand()
返回一个随机数,产生一个在 0 和 1 之间的随机数
SELECT RAND();
Sin()
返回一个角度的正弦
SELECT SIN(30);
Sqrt()
返回一个数的平方根
SELECT SQRT(4);
Tan()
返回一个角度的正切
SELECT TAN(45);