常用函数
1. 字符串函数
函数 | 功能 |
---|
CANCAT(S1, S2, …, Sn) | 连接S1,S2,…, Sn为一个字符串 |
INSERT(str, x, y, instr) | 将字符串str从第x位置开始,y个字符长的子串替换为字符串instr |
LOWER(str) | 将字符串str中所有字符变为小写 |
UPPER(str) | 将字符串str中所有字符变为大写 |
LEFT(str, x) | 返回字符串str最左边的x个字符 |
RIGHT(str, x) | 返回字符串str最右边的x个字符 |
LPAD(str, n, pad) | 用字符串pad对str最左边进行填充,直到长度为n个字符长度 |
RPAD(str, n, pad) | 用字符串pad对str最右边进行填充,直到长度为n个字符长度 |
LTRIM(str) | 去掉字符串str左侧的空格 |
RTRIM(str) | 去掉字符串str右侧的空格 |
REPEAT(str, x) | 返回str重复x次的结果 |
REPLACE(str, a, b) | 用字符串b替换字符串str中所以有出现的字符串a |
STRCMP(s1, s2) | 比较字符串s1和s2 |
TRIM(str) | 去掉字符串行尾和行头的空格 |
SUBSTRING(str, x, y) | 返回从字符串str的x位置起y个字符长度的子串 |
2. 数值函数
函数 | 功能 |
---|
ABS(x) | 返回x的绝对值 |
CEIL(x) | 返回大于x的最大整数值 |
FLOOR(x) | 返回小于x的最大整数值 |
MOD(x, y) | 返回x/y的模 |
RAND() | 返回0到1内的随机值 |
ROUND(x, y) | 返回参数x的四舍五入的有y位小数的值 |
TRUNCATE(x, y) | 返回数字x截断为y位小数的结果(不进行四舍五入,仅截断) |
若rand()函数只能返回0到1内的随机值,可以通过与ceil()函数组合产生0~100内的任意随机整数,ceil(100*rand())
3. 日期和时间函数
函数 | 功能 |
---|
CURDATE() | 返回当前日期,只包含年月日 |
CURTIME() | 返回当前时间,只包含时分秒 |
NOW() | 返回当前的日期和时间 |
UNIX_TIMESTAMP(date) | 返回当前日期date的UNIX时间戳 |
FROM_UNIXTIME() | 返回UNIX时间戳的日期值 |
WEEK(date) | 返回日期date为一年中的第几周 |
YEAR(date) | 返回日期date的年份 |
HOUR(time) | 返回time的小时值 |
MINUTE(time) | 返回time的分钟值 |
MONTHNAME(date) | 返回date的月份名 |
DATE_FORMAT(date, fmt) | 返回按字符串fmt格式化的日期date值 |
DATE_ADD(date, INTERVAL expr type) | 返回一个日期或时间值加上一个时间间隔的时间值 |
DATEDIFF(expr, expr2) | 返回起始时间expr和结束时间expr2之间的天数 |
#MySQL中的日期时间格式 用于fmt参数
%S,%s 两位数形式的秒
%i 两位数形式的分
%H 两位数形式的小时,24小时制
%h 两位数形式的小时,12小时制
%k 数字形式的小时,24小时制
%I 数字形式的小时,12小时制
%T 24小时的时间形式
%r 12小时的时间形式
%p AM或PM
%W 一周中每一天的名称(英文)
%a 一周中每一天名称的缩写
%d 两位数表示月中的天数
%e 数字形式表示月中的天数 1,2,3...
%D 英文后缀表示月中的天数 1st,2nd...
%w 数字形式表示周中的天数(0为Sunday)
%j 以三位数字表示年中的天数
%U 周,其中Sunday为周中的第一天
%u 周,其中Monday为周中的第一天
%M 月名,January,February,...
%b 缩写的月名
%m 两位数表示的月份
%c 数字表示的月份
%Y 四位数表示的年份
%y 两位数表示的年份
%% 表示%
4. 流程函数
函数 | 功能 |
---|
IF(value, t f) | 如果是value是真,返回t,否则返回f |
IFNULL(value1, value2) | 如果value1不为空返回value1,否则返回value2 |
CASE WHEN [value] THEN[result]…ELSE[default]END | 如果value1为真,返回result1,否则返回default |
CASE [expr] WHEN [value1] THEN[result]…ELSE[default]END | 如果expr等于value1,返回result1,否则返回default |
5. 其它常用函数
函数 | 功能 |
---|
DATABASE() | 返回当前数据库名 |
VERSION() | 返回当前数据库版本 |
USER() | 返回当前登录的用户名 |
INET_ATON(IP) | 返回IP地址的数字表示 |
INET_NTOA(IP) | 返回数字代表的IP地址 |
PASSWORD(str) | 返回字符串str的加密版本 |
MD5() | 返回字符串str的MD5值 |