【MySQL】CRUD,常见函数及union&union

本文详细介绍了SQL的CRUD操作(创建、读取、更新、删除)以及常用的字符、数字、日期函数,流程控制函数和聚合函数,同时讲解了union和unionall的区别及其在实际场景中的应用。
摘要由CSDN通过智能技术生成

目录

一 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:
当需要合并多个查询的结果,并且希望去除重复的行时,可以使用Union操作符。
例:合并两个表的数据,不出现重复的记录。

Union All:
当需要合并多个查询的结果,但不需要去除重复的行时,可以使用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语句产生的结果中有相同的行,那么这些行在最终的结果集中会全部出现。

四 思维导图

  • 30
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

.Doll

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值