1.having和where的区别?
where子句: 在分组之前过滤数据,即先过滤再分组,where 后面不可以使用聚合函数;
having子句:在分组之后过滤数据,即先分组再过滤,having 后面可以使用聚合函数.
2.limit的用法是什么?需要注意什么?
分页查询: 将数据进行分页获取
如果一张表中数据非常多
LIMIT 参数1,参数2
参数1 : 开始索引值(就是要被展示数据的索引 索引从0开始)
参数2 : 每页显示的数据个数
*** 开始的索引 = (当前的页码 - 1) * 每页显示的条数 ***
3.我们今天学了几种约束,主键必须要有哪几种约束?
学了非空约束 NOT NULL,唯一约束 UNIQUE, NULL值可以重复, 主键约束 PRIMARY KEY, 外键约束FOREIGN KEY;
主键必须要有唯一和非空两种约束.
4.什么情况下会用到一对多,什么情况下会用到多对多?
一对多 例如:班级和学生,部门和员工,客户和订单,分类和商品;一对多建表原则: 在从表(多方)创建一个字段,字段作为外键指向主表(一方)的主键
多对多 例如:老师和学生,学生和课程,用户和角色; 多对多关系建表原则: 需要创建第三张表,中间表中至少两个字段,这两个字段分别作为外键指向各自一方的
主键。 |