子查询
嵌套查询
select *from 表名 where 列名=(select 列名 from 表名 where 条件)--如果()内的值不是唯一的,=换成in
子查询分相关子查询和无关子查询
相关子查询:括号内查询时单独无法执行,必须括号内外同时进行。
无关子查询:括号内查询时与括号外无关联,括号内可以单独执行语句。
子查询不光可以在where处用,还可以在select与from之间用
select ... (select 列名 from 表名 后可加条件语句等) ... from 表名 ...
分页查询
select top 5 *from haha
--分页代码,前面top代表一页有多少条数据,后面代码是过滤当前页的前面页面的数据
select top 5 *from haha where code not in(select top 10 code from haha)
--查看一个表能够分成多少页
select ceiling(count(*)/5.0) from haha
约束:
主键约束:
主键的6个特点:
① 主键列里不能有重复值;
② 主键列里不能有空值即(null);
③ 主键列里会自动排序;
④ 能唯一标识区分;
⑤ 一个表里只能有一个主键(其他为候选键);
⑥ 主键可以有多列组合成符合主键。
主键的优点:查询效率高
主键最好不要设为自增长列
主表的主键约束从表的外键
唯一性约束:
唯一性约束指定一个或多个列的组合的值具有唯一性,以防止在列中输入重复的值。唯一性约束指定的列可以有null属性,由于主关键字值是具有唯一性的,因此主关键字列不能再设定唯一性约束。