04 2017 档案

【SQL】通过rowid查找及删除重复记录
摘要:新建T表如下: SQL> select * from t; X Y -- 1 a 1 a 1 a 2 b 2 b 3 a 3 a 1.查询表中重复的记录(在子查询中运用了自连接查出相同记录的max(rowid),通过不等值运算查出去,除了第一条重复记录后的重复记录) SQL> select x,y 阅读全文

posted @ 2017-04-30 21:40 Diegoal

【SQL】联合语句
摘要:一、UNION操作符 UNION 操作符用于合并两个结果集,在合并的同时去掉重复行,并按合并后结果的第一列升序排列。合并后结果集的列名由第一个结果集的列名确定。 UINON连接的两个结果集必须具有相同的列数,并且各列具有相同的数据类型。注意这里说的是相同的数据类型,而不是相同的列名! 示例:两个表的 阅读全文

posted @ 2017-04-28 11:13 Diegoal

【PLSQL】游标
摘要:Oracle中的SQL在执行时需要分配一块内存区域,这块内存区域叫做上下文区。 上下文区中记录了SQL语句的处理信息,这些信息包括:查询返回的数据行、查询所处理的数据的行号、指向共享池中的已分析的SQL语句。 在PL/SQL中游标可以分为以下两类: 显式游标:使用CURSOR语句显式定义的游标,需要 阅读全文

posted @ 2017-04-27 15:23 Diegoal

【SQL】IN、EXISTS和表连接三者的效率比较
摘要:一、 IN和EXISTS比较 在许多基于基础表的查询中,为了满足一个条件,往往需要对另一个表进行查询。此时就会用到IN和EXISTS。 例如:查询departments表中存在的部门的人数。 SQL> set timing on SQL> select employees.department_id 阅读全文

posted @ 2017-04-27 14:00 Diegoal

导航