1.having和where的区别?
where是分组前置条件, 且条件不能为聚合函数, having是分组后置条件, 条件可以为聚合函数
,这与mysql的机制有关,mysql是先执行where的条件判断再执行聚合函数的.
2.limit的用法是什么?需要注意什么?
limit用于进行分页查询,
语法: limit 开始的索引,每页查询的条数;
公式: 开始的索引 = (当前的页码 - 1) * 每页显示的条数
注意: limit 是一个MySQL"方言", 在其他使用sql语句的数据库中无法使用
3.我们今天学了几种约束,主键必须要有哪几种约束?
学习了主键约束, 外键约束, 非空约束, 唯一约束四种;
主键必须要有非空约束与唯一约束, 一般是数据无关列, 只用来保证数据唯一性
5.什么情况下会用到一对多,什么情况下会用到多对多?
一对多(多对一):
如:部门和员工, 一个部门有多个员工, 一个员工只能对应一个部门
使用时,在多的一方建立外键,指向一的一方的主键实现一对多关系
多对多:
如:学生和课程, 一个学生可以选择很多门课程, 一个课程也可以被很多学生选择
使用时需要一张中间表, 表中至少要有另外2张表的主键列, 用于关联两张表 |