目录
条件查询执行顺序: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用于对多个查询结果进行并集操作,不包括重复行,相当于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
语句产生的结果中有相同的行,那么这些行在最终的结果集中会全部出现。
?