学习笔记 -- MySQL常用函数(三)
程序员文章站
2022-03-03 17:42:18
...
MySQL系列文章目录
前言
MYSQL很多函数都方便我们作为查询与使用,当然也可以自定义函数
数字函数
1弧度≈57°
函数 | 功能 | 例子 |
---|---|---|
ABS | 绝对值 | ASB(-100) |
ROUND | 四舍五入 | ROUND(1.23) |
FLOOR | 向下取整 | FLOOR(1.9) |
CEIL | 向上取整 | CEIL(1.1) |
POWER(n,m) | 幂函数,n的m次幂 | POWER(2,3) |
LOG(n,m) | 对数函数,以n为底m的对数 | LOG(10,100) |
LN(n) | 对数函数,以e为敌n的对数 | LN(100) |
函数 | 功能 | 例子 |
---|---|---|
SQRT | 开平方 | SQRT(9) |
PI | 圆周率 | PI() |
SIN(n) | 正弦函数,n为弧度 | SIN(1) |
COS(n) | 余弦函数,n为弧度 | COS(1) |
TAN(n) | 正切函数,n为弧度 | TAN(1) |
COT(n) | 余切函数,n为弧度 | COT(1) |
RADIANS | 角度转弧度 | RADIANS(30) |
DEGREES | 弧度转角度 | DEGREES(1) |
时间函数
函数 | 功能 | 格式 |
---|---|---|
NOW() | 获取系统日期和时间 | yyyy-MM-dd hh:mm:ss |
CURDATE() | 获取系统日期 | yyyy-MM-dd |
CURTIME() | 获取系统时间 | hh:mm:ss |
DATE_FORMAT(日期,表达式) | 格式化日期 |
日期格式化
占位符 | 作用 | 占位符 | 作用 |
---|---|---|---|
%Y | 年份 | %m | 月份 |
%d | 日期 | %w | 星期(数字) |
%W | 星期(名称) | %j | 本年第几天 |
%U | 本年第几周 | %H | 小时(24) |
%h | 小时(12) | %i | 分钟 |
%s | 秒 | %r | 时间(24) |
%T | 时间(12) |
日期计算
- MySQL数据库里面,两个日期不能直接相加减,日期也不能与数字相加减
函数 | 功能 | 格式 |
---|---|---|
DATE_ADD | 日期偏移计算,可以嵌套使用 | DATE_ADD(日期, INTERVAL 偏移量 时间单位) |
DATEDIFF | 计算两个日期相差的天数 | DATEDIFF(日期1,日期2) |
用例:
SELECT DATE_ADD(NOW(), INTERVAL 15 DAY);
SELECT DATE_ADD(NOW(), INTERVAL -300 MINUTE)
字符函数
函数 | 功能 | 用例 |
---|---|---|
LOWER | 转换小写字符 | LOWER(name) |
UPPER | 转换大写字符 | UPPER(name) |
LENGTH | 字符数量 | LENGTH(name) |
CONCAT | 连接字符串 | CONCAT(money, “$”) |
INSTR | 字符出现的位置 | INSTR(name, “A”) |
INSERT | 插入/替换字符 | INSERT(“你好”, 1,0,“女士”) |
REPLACE | 替换字符 | REPLACE(“你好女士”,“女士”,“美女”) |
函数 | 功能 | 解释 |
---|---|---|
SUBSTR(字段,开始位置,结束位置) | 截取字符串 | 从开始位置截取到结束位置 |
SUBSTRING(字段,开始位置,偏移量) | 截取字符串 | 从开始位置往后截取指定偏移数 |
LPAD(字段,最终长度,填充内容) | 左侧填充字符 | 往左侧填充指定内容,字符串等于最终长度 |
RPAD(字段,最终长度,填充内容) | 右则填充字符 | 往右侧填充指定内容,字符串等于最终长度 |
TRIM | 去除首尾空格 |
用例:
# 在位置1,你好的前面加上女士,0是指偏移量,是否替换后面的字符
SELECT NSERT("你好", 1,0,"女士")
# 在你好女士中的女士替换成美女
SELECT REPLACE("你好女士","女士","美女")
条件函数
IFNULL(表达式,值) # 如果表达式为空,返回指定值
IF(表达式,值1,值2) # 如果表达式成立返回值1,否则返回值2
# 如果表达式1成立返回值,否则如果表达式2成立返回值2,否则返回值N
CASE
WHEN 表达式1 THEN 值1
WHEN 表达式2 THEN 值2
...
ELSE 值N
END
总结
总结大部分常用函数,供自己使用方便查阅