一:
1.查询数学成绩在70分以上的所有信息
select *from rg where math_score>70;
2.查询数学成绩在70分以上的人数
count(字段)是一个mysql函数,用来统计查出来的记录条数
select count(*) from rg where math_score>70;
3.查询数学成绩在70分以上而且身高在160以上的学生的所有信息
多个筛选条件的时用and拼接条件
select * from rg where math_score>70 and height >160;
4.查询数学成绩分数的总和
sum(字段)是一个mysql函数,用来求和
select sum(math_score) from rg;
5.查询女生数学成绩分数的总和
select sum(math_score) from rg where gender="女";
6.查询女生各科成绩的总和
select sum(math_score), sum(chinese_score) ,sum(english_score) from rg where gender="女";
为了给用户呈现更好的视图我们可以用as来取别名
select sum(math_score) as' 数学成绩',sum(chinese_score) as'语文成绩',sum(english_score) as'英语成绩' from rg where gender="女";
7.男生的数学成绩的平均成绩
sum可以对varchar求和,avg只能对int求平均值,avg(字段)是一个mysql函数,用来求平均值
select AVG(math_score) as '数学平均成绩' from rg;
8.求同学里面语文成绩最高的那个人的语文成绩
max()求最大值
select max (chinese_score) as '语文成绩' from rg;求同学里面语文成绩最低的那个人语文成绩。
min()求最小值
select min (chinese_score) as '语文成绩' from rg;
9.我们写sql指令的时候不要光顾着查出来就好了就ok了 我们要为用户着想
select student_name as '姓名',class_id as '班级号',math_score as '数学成绩',chinese_score as '语文成绩', english_score as '英语成绩',height as '身高' from rg where student_name='小红';
二:约束
1.(1)主键约束:将表中的某一字段添加约束设为不重复且不为空
设定int为主键约束后,不允许再次插入int相同的数据否则会报错
(2)联合主键:设多个主键,只要不同时重复即可,主键不能为空否则报错。下图中前三个没问题,最后一个会报错因为有空值
(3)初始时没有设定主键约束,如何再补上约束
修改表user4加上主键id
(4)如何删除主键
(5)使用modify修改字段添加约束
2.自增约束:可以和主键约束搭配用来管控id的值,保证不重复唯一且可自增。
下图中我们并没有插入id的值,但通过自增它会自动把ID赋值为1,再次插入一个数据后,该数据ID为2
3.唯一约束:约束字段的值不能重复
创表时添加
创表后添加
modify添加
删除唯一约束
3.非空约束
4.默认约束:当我们没有插入值时,会使用默认的值
5.外键约束:涉及两个表 子表和父表
主表classes中没有的数据值,在副表中是不可以使用的
主表中的记录被副表引用,是不可以被删除的(如下图不可以删除主表中的四班,因为已经被副表引用即副表中有学生属于了四班)