MySql
2023-03-21 19:48:44 6 举报
AI智能生成
思维导图
作者其他创作
大纲/内容
语句
基本查询
select 查询字段 from 表名(*表示所有列,实际开发中不能使用)
ifnull
ifnull(判断的字段值,如果结果为null的值)
as
取小名(1列名过长或字段名重复2想要用别名进行查询、区分)
例子:SELECT last_name,salary/22/8 as '时薪' FROM t_employees;
排序查询
desc 降序
ASC 升序 默认不写
条件查询(SELECT * FROM表名 WHERE 查询条件;)
关系条件
< > >= <= != <>(不等于)
逻辑条件
and or not
区间条件
BETWEEN 起始值 AND结束值
枚举条件
in(值1,值2...) not in(值1,值2...)
非空条件
IS NULL is not NULL(sql中的null不能使用=或者!=来进行判断)
模糊查询
like not LIKE
占位符:% 表示0个或者多个字符
_表示一个字符
占位符:% 表示0个或者多个字符
_表示一个字符
去重查询
SELECT DISTINCT
分支查询
case
when 条件1 then 结果1
when 条件2 then 结果2
when 条件3 then 结果3
else 结果4
END
when 条件1 then 结果1
when 条件2 then 结果2
when 条件3 then 结果3
else 结果4
END
时间函数(select 时间函数(参数列表))
获取当前系统时间
SELECT SYSDATE();
获取当前日期
SELECT NOW();
获取系统当前日期不包含时间
SELECT CURDATE();
获取系统时间
SELECT CURTIME();
获取指定日期中的年份
SELECT YEAR('输入的日期');
计算指定日期相隔天数
SELECT DATEDIFF('第一个日期','第二个日期')
在指定的日期基础上添加指定天数
SELECT ADDDATE(指定的日期,添加的天数)
字符串函数
拼接
CONCAT(str1,str2,...)
SELECT CONCAT('hello','word')
SELECT CONCAT('hello','word')
替换
INSERT(str,pos,len,newstr)
--参数1 原始字符串 参数2 起始位置 参数3截取长度 参数4替换的字符串
--参数1 原始字符串 参数2 起始位置 参数3截取长度 参数4替换的字符串
截取
SELECT SUBSTRING('hello,java123',7,4)
参数1 原始字符串 参数二=2起始位置 参数3截取的长度
参数1 原始字符串 参数二=2起始位置 参数3截取的长度
聚合函数(SELECT 聚合函数(列名) FROM 表名)
求和
SELECT sum( )from
最大值
SELECT MAX( )from
最小值
SELECT min( )FROM
平均值
SELECT AVG( )FROM
求个数
SELECT count(* )from
*表示所有列 函数只会统计不为null的数据
0 条评论
下一页