一、请详细描述一下,什么是约束?常用的约束有哪些,对应的关键字是什么,各自的应用场景?
约束就是限制字段属性的
限制表中数据的输入,以确保数据的完整性、一致性和准确性。
primarykey 设置主键 default 默认字段值 、foreign key 设置外键 、unique、唯一不重复
not null 不为空 autu increment 自增
二、请详细描述字段声明 gender tinyint 与 gender tinyint unsigned 的区别? char与varchar的区别? 以及在设计表时,该如何选择?
gender tinyint 是有符号的。
gender tinyint 是无符号的不能有负数。
char 是固定长度 varchar 是可变固长。
三、DQL语句分组查询时,where,group by,having之间的执行顺序是什么样的? where 与having的区别是什么?
where group by having where在没有分组前进行条件过滤的,而having 是在分组后对聚合函数操作的