mysql常用sql语句整理

增-insert

// 方式1
insert into student values(null,'张三','男','1996-4-25','......');
// 方式2
insert into student (id,name,sex,age,sno) values (null,'李超','男',38,1);

查-select


and条件查询
select * from student where date>'2020-1-2' and date<'2020-12-1';

between条件查询
select * from student where date between '2020-1-2' and '2020-12-1';

like模糊查询
// 查询“王”姓的学生,例如:王立,王刚刚,王克司
select * from student where user_name like '王%';
// 查询姓名中包含“三”的学生,例如:三兒、张三无、刘三
select * from student where user_name like '%三%';

in 查询指定集合内的数据
select * from student where id in (1,3,5);

排序 asc 升序 desc 降序
// 默认排序方式为asc
select * from student order by id desc;

求平均值
select avg(id) as '平均值' from student;

统计表中总数
select count(*) from student;

求和
select sum(id) from student;

查询第i条以后到第j条的数据(不包括第i条)
select * from student limit 2,5;  #显示3-5条数据

分组查询,通过sex分组,查询age的最小值
select min(age), sex, name from student group by sex;

and if条件拼接
select * from student where age>16 and if (判断, 判断为真时, 判断为假时);
select * from student where age>16 and if (''=null, 1=1, name="赵飒");

改-update

update student set sex='男' where id=4;

删-delete

delete from student where id=5;

多表联查

a表数据

idname
1张三
2李四
3王五

b表数据

idageuser_id
1231
2342
3344

内连接
select a.*,b.* from a inner join b on a.id=b.user_id

a表和b表中同时存在的数据
结果为:

id(a)nameid (b)ageuser_id
1张三1231
2李四2342

左连接
select a.*,b.* from a left join b on a.id=b.user_id

a表中数据全有,b表中不存在用null补充
结果为:

id(a)nameid (b)ageuser_id
1张三1231
2李四2342
3王五nullnullnull

右连接
select a.*,b.* from a right join b on a.id=b.user_id

b表中数据全有,a表中不存在用null补充
结果为:

id(a)nameid (b)ageuser_id
1张三1231
2李四2342
nullnull3344

完全连接
select a.*,b.* from a full join b on a.id=b.user_id

a表和b表中数据全有,两表中不存在的数据用null补充
结果为:

id(a)nameid (b)ageuser_id
1张三1231
2李四2342
3王五nullnullnull
nullnull3344

多表多库exists查询

select b.字段2 from 数据库1.1 b where not exists (select a.字段1 from 数据库2.2 a where a.字段1=b.字段2)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

沐囦

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

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

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

打赏作者

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

抵扣说明:

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

余额充值