mysql 自动查询汇总_Mysql-Sql查询汇总

简单查询

创建students表

create table students(

id int not null unique primary key auto_increment,

name varchar(10) not null,

class varchar(10) not null,

grade int

)

添加数据

insert into students values(0,'老1','1班',80);

insert into students values(0,'老2','2班',90);

insert into students values(0,'老3','3班',86);

insert into students values(0,'老4','4班',70);

insert into students values(0,'老5','5班',89);

insert into students values(0,'老6','6班',93);

查询所有数据

select * from students

查询指定字段

select name,class from students

通过as给表起别名

select s.name,s.class from students as s

通过as给字段起别名

select name as 姓名,class as 班级 from students

条件查询

比较运算

select * from students where class='1班'

select * from students where grade>90

逻辑运算

and、or、not

select * from students where grade<90 and class!='1班'

模糊查询

like、%任意多个字符、_一个任意字符

select * from students where name like '老%'

select * from students where name like '%5'

范围查询

in表示非连续范围内、between...and...在一个连续范围内

select * from students where class in('1班','3班','4班')

select * from students where grade between 80 and 90

空判断

is null 与' '不同,' '为空字符串

select * from students where grade is null

select * from students where class=' '

insert into students(name,class,grade) values('老7','1班',null)

排序

order by 列1 asc|desc,列2 asc|desc

asc从小到大,升序,不写则为升序

desc从大到小,降序

select * from students order by grade

先按grade降序、再按id升序

select * from students order by grade desc,id

先按id升序、再按grade降序

select * from students order by id,grade desc

聚合函数

count

select count(*) from students

带字段的不统计为null的数据

select count(grade) from students

max、min、sum、avg

select max(grade) from students

select avg(grade) from students

分组

select sex,count(*) from students group by sex

8c27e2a80f985c5cc1bc2ab0c311b6d4.png

select grade,count(*) from students group by grade

2bc150a8e7a5ff808354216b1725daf8.png

select class,grade,count(*) from students group by grade,class

8053f61066222c2131e849c0e80febdf.png

分组后过滤

使用having,必须跟在group by之后

where是用于from后的数据筛选、having是对group by的结果进行筛选

获取部分行

索引0开始

select * from students order by grade limit 0,3

分页

每页显示m条数据,第n页的数据

select * from students limit (n-1)*m,m

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值