约束,索引,rownum&rownum

Posted moyulove

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了约束,索引,rownum&rownum相关的知识,希望对你有一定的参考价值。

--constraint

--not null 非空约束

--unique 唯一键

--非空&唯一

--自定义检查约束

--创建约束时,为约束起名

--在添加完列后,还可以添加约束

--除了not null不可以

 

--主键约束

--为了保证该列的数据能够证明行记录在表中是唯一的

--主键约束从形式看,类同于(非空和唯一)约束

--在列之后添加

--一张表只有一个主键,但可以选择多个列,作为联合主键

--外键foreugn key

--外键用来描述两张表之间的关系,必须保证外键列的值必须为参考列的值中的一个

 

 

--索引:
create index idx_emp_ename_job on emp(ename,job)

select * from emp where ename = ‘SMITH‘ and job= ‘XXX‘;

 

--只有添加索引的列,通过该列进行查询时,速度才可以变快

 

 

 

--rownum
--Top N
--求薪水最高的5个员工信息
select t.*,rownum
from
(select e.* from emp e order by sal desc) t where rownum <= 5

--分页查询
--求薪水6-10名的员工信息(每页五条数据,第二页)
select tt.*
from (select t.*, rownum rn
from (select e.* from emp e order by sal desc) t
where rownum <= 10) tt
where rn > 5


--rowid
select e.*,rowid from emp_temp e;

delete from emp_temp where ename;

--数据去重
delete from emp_temp where empno not in(select min(empno) from emp_temp group by ename)

 

 

以上是关于约束,索引,rownum&rownum的主要内容,如果未能解决你的问题,请参考以下文章

Oracle | DDL&约束&DCL&TCL

Oracle rownum的理解

oracle中使用rownum获取数据

mysql索引&实现原理

Oracle 分页查询rownum的用法

删除行 UITableView 索引问题