day2DQL查询语句排序查询:**order by** select * from 表名 order by 列名 eg: select *from student order by english asc,math asc(先按照英语成绩升序排名,如果英语成绩一样,再按数学成绩升序排名) 聚合函数:将一列数据作为一个整体,做纵向计算 分组查询:group by 语法: group by 分组字段; select sex ,AVG(math) from student group by sex; 注意: 1.分组之后查询的字段:分组字段,聚合函数 2.where和having的区别? where在分组之前限定条件 having在分组之后进行限定,如果不满足要求,则不会被查询出来. where后不可以跟聚合函数,having可以进行聚合函数判断。
分页查询: eg: select * from student limit 0,3; --第一页 select * from student limit 3,3; --第二页
约束分类: 主键约束(primary key) 含义:非空其唯一 一张表只能有一个字段为主键 主键就是记录中的唯一标识 格式示例: 创建主键: create table stu(
id int primary key,
name varchar(20)
);
删除主键 alter table stu drop primary key;
创建完表后添加主键 alter table stu modify id int primary key;自动增长
非空约束(not null) 唯一约束(unique) 外键约束:foreign key 概念:让表与表产生关系,保证数据的正确性。
数据库设计- 多表之间的关系
一对一(了解): 如:人和身份证(一人一证,一证对应一人) 建表原则:在任意一方建立指向对方的主键
多对一或一对多(掌握): 如:部门和员工(一个员工对应一个部门,一个部门对应多个员工) 建表原则:在多的一方,建立外键,指向少的一方的主键
多对多(掌握) 如:学生选课(一个课程可以对应多个学生,一个学生对应多个课程) 建表原则:需要建立第三张中间表,并且至少有两个字段,这两个字段,作为第三张表的外键,分别指向两张表的主键
- 数据库设计的范式
概念:设计数据库的规范 分类: 第一范式(1NF) 第二范式(2NF) 第三范式(3NF)
- 数据库的备份和还原
|
|