目录
一 CRUD
查询
新增数据
修改数据
删除数据
二 常见函数
① 字符函数
② 数字函数
③ 日期函数
④ 流程控制函数
⑤ 聚合函数
三 union&union
含义
语法
一 CRUD
条件查询执行顺序:where(条件) group by(分组) having(筛选) order by(排序) limit(记录数)
查询
查询t_book表的所有数据
select * from t_book 查询t_book id为1的数据
select * from t_book where id =1查询id大于6的数据
select * from t_book id>6
新增数据
新增一条数据insert into t_book values(1,1,1,1)新增多条数据
insert into t_book values
(1,1,1,1),
(1,1,1,1)选择性新增数据
insert into t_book set id=1,name=zhangsan,sex='男'
修改数据
修改id为1的name值
update t_book set name=lisi where id=1
删除数据
删除id为1的数据
delete from t_book where id=1
二 常见函数
① 字符函数
转小写: LOWER('NIHAO') > nihao
转大写: UPPER('nihao') > NIHAO
拼接: CONCAT('Hello','World') > HelloWorld
截取: SUBSTR('HelloWorld',1,5) > Hello
长度: LENGTH('HelloWorld') > 10
字符出现索引值 : INSTR('HelloWorld','o') > 5
字符截取后半段: TRIM('M'FROM'HelloWorld') > elloWorld
字符替换: REPLACE('abcd','b','m') > amcd
② 数字函数
四舍五入: ROUND(45.926,2) > 45.93
截取: TRUNC(45.926,2) > 45.92
求余: MOD(1600,300) > 100
③ 日期函数
获取当前日期 > now()
将日期格式字符转成指定格式的日期
STR_TO_DATE('9-13-1999','%m-%d-%Y') >1999-9-13
将日期转换成字符
DATE_FORMAT(‘2024/1/3’,‘%Y年%m月%d日’) > 2024年01月03日
④ 流程控制函数
CASE expr WHEN comparison_expr1 THEN return_expr1
[WHEN comparison_expr2 THEN return_expr2
WHEN comparison_exprn THEN return_exprn
ELSE else_expr]
END
案例:查询同时存在01课程与02课程的情况
select
t3.*,
(CASE WHEN t1.cid='01' THEN t1.score END)语文,
(CASE WHEN t2.cid='02' THEN t2.score END)数学
FROM
(SELECT * FROM t_mysql_score sc WHERE sc.id='01')t1,
(SELECT * FROM t_mysql_score sc WHERE sc.id='02')t2,
t_mysql_student t3
WHERE
t1.sid=t2.sid
AND t1.sid =t3.sid
⑤ 聚合函数
① sum求和
② avg平均值
③ max最大值
④ min最小值
⑤ count计算
三 union&union
含义
Union用于对多个查询结果进行并集操作,不包括重复行,相当于Distinct,同时进行默认规则的排序;
Union All则是对多个查询结果进行并集操作,包括重复行,即所有的结果全部显示,不管是不是重复
语法
UNION
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;
使用UNION
时,默认会删除结果集中的重复行。这意味着如果两个SELECT
语句产生的结果中有相同的行,那么这些行在最终的结果集中只会出现一次
UNION ALL
SELECT column_name(s) FROM table1
UNION ALL
SELECT column_name(s) FROM table2;
使用UNION ALL
时,不会删除结果集中的重复行。这意味着如果两个SELECT
语句产生的结果中有相同的行,那么这些行在最终的结果集中会全部出现。