首页 > 代码库 > 数据库(五)

数据库(五)

子查询 

嵌套查询 

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属性,由于主关键字值是具有唯一性的,因此主关键字列不能再设定唯一性约束。

数据库(五)