分组查询,默认值,外键
一。分组查询
1.分组查询(group by)
select 性别,count(*) from 表名 group by 性别;
性别栏分组,计算总数
2.分组查询后筛选(having )
select 地区 ,avg(html) from 表名 group by 地区 having avg(html)>60;
html平均成绩及格的人的所在地
二。默认值
CREATE TABLE emp(
eid INT,
ename VARCHAR(10) NOT NULL,
money DOUBLE DEFAULT 0,
idcard VARCHAR(20) UNIQUE
);
1.default ‘山东’
当数值没写的时候,默认写山东,允许写null
2.unique
数值不可重复
3.gender
数值非空
4.primary key
.主键(非空+唯一)
5.auto_increment
自增长,自增长字段可以不赋值
6.zerofill
从0开始,零填充,写在类型后面
(1)delete from student;不影响自增长的约束
(2)truncate table student;影响自增长约束
三。外键
作用:约束两种表的数据
主表
create table 主表(
did int primary key AUTO_INCREMENT,
cname varchar(20)
)
)
副表
create table 副表(
sid int primary key,
ename varchar(20),
did INT,
constraint fk_副表_主表 doreign key(did)
references 主表(did)
)
被约束的表称为副表,约束别人的表称为主表
添加数据: 先添加主表,再添加副表
修改数据: 先修改副表,再修改主表
删除数据: 先删除副表,再删除主表