MySQL常用函数
一、常用数学函数
函数 | 说明 |
---|---|
ABS(X) | |
FLOOR(X) | |
CEIL(X) | |
TRUNCATE(X, D) | 数值X保留小数点后D位,不四舍五入 |
ROUND(X) | 四舍五入到最近整数 |
ROUND(X, D) | 数值X保留小数点后D位,四舍五入 |
RAND() | 返回0-1的随机数 |
MOD(N,M) | N除以M后的余数 |
SELECT 函数名(参数列表)[, ...];
二、常用字符串函数
函数 | 说明 |
---|---|
CHAR_LENGTH(str) | 字符个数 |
LENGTH(str) | 字节个数 |
CONCAT(s1,s2…) | 拼接,其中任意1个为NULL,则返回值为NULL |
LOWER(str) | 变小写 |
LCASE(str) | |
UPPER(str) | 变大写 |
UCASE(str) | |
LEFT(s,n) | 返回从左开始n个字符 |
RIGHT(s,n) | |
LTRIM(s) | 删除字符串左边所有空格 |
RTRIM(s) | |
TRIM(s) | 删除两边所有空格 |
REPLACE(s,s1,s2) | 用s2代替s中的所有字符串s1 |
SUBSTRING(s,n,len) | 从字符串s中截取从第n个字符开始(不是下标),长度为len的字符串 |
三、日期和时间函数
函数 | 说明 |
---|---|
CURDATE() | 当前日期 |
CURRENT_DATE() | |
CURTIME() | 当前时间 |
CURRENT_TIME() | 当前日期和时间 |
NOW() | |
CURRENT_TIMESTAMP() | |
SYSDATE() | |
YEAR(d) | 返回日期中的年份值 |
MONTH(d) | 范围1-12 |
DAYOFMONTH(d) | |
HOUR(d) | |
MINUTE(d) | |
SECOND(d) | |
ADDDATE(d,n) | 日期d加上n天的日期 |
TIMESTAMPDIFF(INTERVAL expr type,d1,d2) | 给定日期的时间差,返回指定时间类型的时间差 |
DATE_FORMAT(d,f) | 返回给定日期格式的字符串,f:’%Y-%m-&d %H-%i-%s’,小写h表示12小时制,大写H表示24小时制 |
显示的是日期转换而成的字符串,日期也可以写为特定格式的字符串
四、条件判断语句
1.IF函数
-
IF(条件,表达式1,表达式2)
条件满足则为表达式1,否则为表达式2
-
IFNULL(字段,表达式)
字段为空,则为表达式,否则为字段值
2.CASE…WHEN语句
- CASE WHEN
CASE WHEN 条件1 THEN 表达式1 [WHEN 条件2 表达式2...] ELSE 表达式n END;
- CASE…WHEN
CASE 表达式 WHEN 值1 THEN 表达式1 [WHEN 值2 表达式2...] ELSE 表达式n END;
五、其他函数
1.数字格式化函数
FORMAT(X,D), X四舍五入保留到小数点后D位
2.系统信息函数
函数 | 说明 |
---|---|
VERSION() | 数据库版本号 |
CONNECTION_ID() | 服务器的连接数 |
DATABASE() | 当前数据库名 |
SCHEMA() | |
USER() | 当前用户名 |
SYSTEM_USER() | |
SESSION_USER() | |
CURRENT_USER() | |
CURRENT_USER |