这个部分比较简单,且容易记忆,只放了图
SELECT CONCAT('123','456'); # 123456
SELECT CONCAT('123','456','789'); # 123456789
SELECT LOWER('AAa'); # aaa
SELECT LOWER('AAa'); # AAA
SELECT LPAD('1111',5,'0'); # 01111 变量1:字符串 变量2:填充后字符串长度 变量3: 填充的字符
SELECT LPAD('11111',5,'0'); # 11111
SELECT LPAD('111',5,'07'); # 07111
SELECT LPAD('1111',5,'07'); # 01111
SELECT RPAD('1111',5,'0'); # 11110 变量1:字符串 变量2:填充后字符串长度 变量3: 填充的字符
SELECT RPAD('11111',5,'0'); # 11111
SELECT RPAD('111',5,'07'); # 11107
SELECT RPAD('1111',5,'07'); # 11110
SELECT TRIM(' 单词1 单词2 '); # 单词1 单词2 中间仍有空格,仅去头尾空格
SELECT SUBSTRING('字符串',0,1); # 返回空 索引从1开始 变量1:字符串 变量2:开始索引 变量3: 截取长度
SELECT SUBSTRING('字符串',1); # 字符串 变量3省略不写则默认截取到字符串尾部
SELECT SUBSTRING('字符串',1,2); # 字符 从索引1截取长度为2的字符串
SELECT CEIL(1.1); # 2
SELECT CEIL(-1.1); # -1
SELECT FLOOR(1.1); # 1
SELECT FLOOR(-1.1); # -2
SELECT MOD(10,3); # 1
SELECT RAND(); # 0.2914650238039578 返回0-1任意数,不带任何参数,注意可能返回0.0开头的随机数
SELECT ROUND(3.333,1); # 3.3 变量1:要四舍五入的数 变量2:保留的小数位
SELECT ROUND(3.373,1); # 3.4
SELECT CURDATE(); # 2023-06-10
SELECT CURTIME(); # 17:13:13
SELECT NOW(); # 2023-06-10 17:13:54
SELECT YEAR(NOW()); # 2023
SELECT YEAR('2020-6-3'); # 2020
SELECT MONTH(NOW()); # 6 指6月份
SELECT MONTH('2020-7-3'); # 7
SELECT DAY(NOW()); # 10 指今天10号
SELECT DAY('2020-7-3'); # 3
SELECT DATE_ADD('2020-12-01',INTERVAL 60 DAY); # 2021-01-30 当前日期加60天 (INTERVAL 60 DAY) INTERVAL 为固定格式,60为数量,DAY为日期单位 可为DAY,MONTH,YEAR,注意一个月可能有31天
SELECT DATE_ADD('2020-12-01',INTERVAL 10 MONTH); # 2021-10-01
SELECT DATE_ADD('2020-12-01',INTERVAL 10 YEAR); # 2030-12-01
SELECT DATEDIFF('2023-6-10','2023-6-8'); # 2 注意是前面的日期减后面的日期
SELECT DATEDIFF('2023-6-8','2023-6-10'); # -2
SELECT DATEDIFF('2024-6-8','2023-6-10'); # 364
SELECT IF(6>1,'ok','error'); # ok 变量1:判断条件 变量2:条件为ture返回该变量 变量3: 条件为false返回该变量
SELECT IF(1>6,'ok','error'); # error
SELECT IFNULL('1','2'); # 1 变量1不为空返回变量1,反之返回变量2
SELECT IFNULL('','2'); # 返回'',''不为null,只有变量1为null才返回变量2
SELECT IFNULL(NULL,'2');# 2
# WHEN可有多个分支
SELECT (CASE WHEN 6 > 1 THEN '分支1' WHEN 6 > 1 THEN '分支2' ELSE '默认值' END) dd; # 分支1
SELECT (CASE WHEN 6 < 1 THEN '分支1' WHEN 6 > 1 THEN '分支2' ELSE '默认值' END) dd; # 分支1
SELECT (CASE WHEN 6 < 1 THEN '分支1' WHEN 6 > 1 THEN '分支2' ELSE '默认值' END) dd; # 分支2
SELECT (CASE WHEN 6 < 1 THEN '分支1' WHEN 6 < 1 THEN '分支2' ELSE '默认值' END) dd; # 默认值
SELECT (CASE 6 WHEN 6 THEN '分支1' WHEN 1 THEN '分支2' ELSE '默认值' END) dd; # 分支1
SELECT (CASE 1 WHEN 6 THEN '分支1' WHEN 1 THEN '分支2' ELSE '默认值' END) dd; # 分支2
SELECT (CASE 10 WHEN 6 THEN '分支1' WHEN 1 THEN '分支2' ELSE '默认值' END) dd; # 默认值