一、ORDER BY 排序
排序方式
1.升序:ASC(默认就是升序)
2.降序:DESC
3.如果有多个排序条件,前面的值一样时才会判断第二条件
--按照数学成绩排序
select*from Student ORDER BY math
--按照数学成绩排序,如果数学成绩一样,按照英语成绩排序
select*from student order by math ASC,english ASC
二、 聚合函数
将一列数据作为整体作为一个总计,进行纵向计算,聚合函数排除NULL值统计的都是非空的列,选主键统计,建表的时候习惯加的序号列,就可以作为主键统计个数
1、count:计算个数
select count(name) from student
selsect count (ifnull(name,0)) from student
如果这个值是null 替换成0
2、max:计算最大值
select max(math) from student
3、min:计算最小值
select min(math) from student
4、sub ;求和
select sub(math) from student
5、avg:计算平均值
select avg(math) from student
三、分组查询
1.语法 group by
2.分组之后查询的字段:分组的字段、或者聚合函数
3.where和having 的区别:
(1)where在分组之前进行限定,如果不满足where不参与分组,having在分组之后进行限定,不满足结果不会被查询出来
(2)where 后不跟聚合函数的判断 having 后跟聚合函数的判断
--按照性别查询 分别查询男 女平均分
select*from Student GROUP BY sex
select sex,AVG(math),count(ID),from Student GROUP BY sex
--分数低于70分不参与分组,
select sex,AVG(math),count(ID),from Student where math>70 GROUP BY sex having count(ID)>2
四、分页查询limt
1.语法:limt :开始的索引=(当前的页码-1)*每页的条数、每页的条数
--每页三条记录
select *from student limt 0,3--第一页
select *from student limt 3,3-第二页,第一个3代表第4条记录开始的索引
五、约束
对表中数据起作用,保证数据正确性、有效性、完整性
1.主键约束: PRIMARY key
2.非空约束: not NULL
3.唯一约束:UNIQUE
4.外键约束: FOREIGN KEY
1 、非空约束
--在创建表时添加非空约束
create table stu modify name vachar(20) not NULL
--删除NAME的非空约束
alter table stu modify name vachar(20)
2、唯一约束:某一列的值不能重复
--在创建表时添加唯一约束
create table stu modify name vachar(20) unique
--删除NAME的唯一约束
alter table stu modify name vachar(20)