1.having和where的区别?
1. where 在分组之前进行限定,如果不满足条件,则不参与分组。having在分组之后进行限定,如果不满足结果,则不会被查询出来
2. where 后不可以跟聚合函数,having可以进行聚合函数的判断。
2.什么是主键,主键有什么作用?
(1)非空且唯一的键值
(2)一张表只能有一个主键,是这个表记录的唯一标识,主键创建后无特殊情况,都不会进行变更的
3.我们今天学了几种约束,主键必须要有哪几种约束?
分类:
1. 主键约束:primary key
2. 非空约束:not null
3. 唯一约束:unique
4. 外键约束:foreign key
主键必须有非空约束和唯一约束。
4.什么情况下会用到group by分组函数?
需统计相同特征的某一类的数据,把这些数据当成一个整体的信息
5.什么情况下会用到一对多,什么情况下会用到多对多?
一对多建表原则: 在从表(多方)创建一个字段,字段作为外键指向主表(一方)的主键。
多对多关系建表原则: 需要创建第三张表,中间表中至少两个字段,这两个字段分别作为外键指向各自一方的主键。 |