# 完整性约束
- 主键约束 primary key
作用是保证每一条记录不重复
每张表都要有且仅有一个字段作为主键
- 非空约束 not null
作用是保证此字段的值必须填写,不能为空
除了主键之外,其他字段都可以考虑设置非空约束
- 唯一约束 unique
作用是出了主键之外如果其他字段也要保证不重复
可以使用唯一约束
- 检查约束 check(条件)
作用适当check后面的条件成立时,才能插入此数据
- 默认值约束 default 值
作用是如果在可以为空的情况下,如果不填数据,那么就给定一个默认的值。
-- 最普通的查询
select * from 表名;
-- 查询指定字段
select 字段名1 , 字段名2 , 字段名3 from 表名;
-- 对查询结果的表头 进行 重命名
select 字段名1 称号 , 字段名2 名字 , 字段名3 价格 from 表名;
--条件查询 筛选使用 where
--查询所有的女性hero '女'
select * from 表名 where 性别='女';
--多条件查询 and并且 or或者
--查询所有未成年的女生的信息
select * from 表名 where stu_age < 18 and stu_sex = '女';
-- 查询在某个范围之间的 信息 年龄范围 价格范围
-- 方法一: 大于小于 [x,y] >=x <=y
-- 价格1350到4800之间的hero信息
select * from 表名 where 价格>=1350 and <=4800;
-- 方法二: between x and y 在x和y之间的数据 xy 可以取得到 [x,y]
select * from 表名 where 价格 between 1350 and 4800
-- 排序 order by 字段(数字)
--默认从小到大排序-->升序
--从大到小-->降序 desc
select * from hero order by 价格 desc;
--如果既有排序 又有 条件筛选
--查询所有的女性英雄 按照价格 升序
select * from hero where 性别 = '女' order by 价格;
-- 模糊查询 like '通配符'
-- 通配符 %代表任意长度的字符 _代表一个长度字符
-- 查询 名字中 带有 斯 的英雄的信息
select * from hero where 名字 like '%斯%';
-- 分页查询 limit x offset y
-- limit 限制 每页限制x条数据
-- offset 偏移量 从第y条开始查(y从0开始取)
-- 查询英雄的数据 每页显示10条,先看第一页 1-10
select * from hero limit 10 offset 0;
-- 看第二页
select * from hero limit 10 offset 10;-- 11-20
-- 每页显示5条, 看第三页
select * from hero limit 5 offset 10;
-- 如果既有 排序 又有 条件筛选 又有 分页
--第一步一定是条件 最后一定是分页
--查询所有女性英雄的信息 根据价格升序排序 每页显示5条 先看第一页
select * from hero where 性别 = '男' order by 价格 limit 5 offset 0;