【SQL 学习】minus 和intsect 的排序方式!
前面的文章说 minus 和intsect 的排序方式和union的排序方式是一样的,这里做一个实验验证一下:SQL> select id ,name ,text from t 2 minus 3 select id ,name ,text...
【SQL 学习】排序问题之order by与索引排序
SQL> conn yang/yang as sysdba已连接。SQL> create table t as select object_id id ,object_name name 2 from dba_objects ;表已创建。SQL> set autot traceonly一次普通的全表扫描,没有排序的...
【SQL 学习】UNION 的排序方式!
(感谢dingjun123版主 为本文提供帮助)union怎么排序?许多人肯定会说 根据第一字段来排序,呵呵,这个答案能得50分!考虑到如果select的第一个字段是重复时,会怎样?看一个测试!SQL> select 1 id ,'a1' val ,'b1...
【SQL 学习】求一个表中列值的最前三名
表A是个职工工资表,现在你写一个sql,实现如下功能:1.返回表中所有结果2.将工资最高的3个职工记录信息按工资从低到高排序放在查询结果的前3个最高工资记录3.其他的记录以正常的select结果输出写一个sql来实现利用比...
【SQL 学习】一个面试题
今天面试的时候,问了一个sql编写的题目, 求每门成绩的最高分数的id 以及科目,分数。(当时没有写好,郁闷了,面试官还是很好的,给我讲解了一下!)回到宿舍自己有写了一下,两个方法:SQL> create table test (...
rownum 的一点儿研究
rownum 是oracle提供的一个用来得到结果集每行的行号的伪列。做如下测试:一 当where 和 rownum 在同一行时 rownum不能和 > ,>= (>=1 可以) = 这些算术运算符连用,当使用分页查询时可以! &...
【SQL 学习】去掉重复行
“成对”的记录 去掉其中一其中 a----c 和 c-----a “成对” 于是去掉其中一个,如,去掉c----a b----c 和 c-----b “成对” 于是去掉其中一个,如,...
【SQL 提示 之三】
SQL> create table t as select * from dba_objects;表已创建。SQL> create index idx_t on t (object_id);索引已创建。SQL> exec dbms_stats.gather_table_stats(user,'T',cascade => true);PL/SQL 过程已成...
【SQL 分析函数】wm_concat 行列转换
SQL> select deptno,hiredate,ename from emp order by 1,2; DEPTNO HIREDATE ENAME &...
【SQL 提示 之二】index_ss Index Skip Hint
Index Skip Hint 在如下情况下使用:当在一个联合索引中,某些谓词条件不在联合索引的第一列时比如 id,object_name 在where条件中使用了object_name 时,可以通过使用Index Skip Hint 来访问数据。...
【sql hint 提示】
SQL> create table t as select * from dba_objects;表已创建。SQL> create index idx_t on t (object_id);索引已创建。SQL> exec dbms_stats.gather_table_stats(user,'T',cascade => true);PL/SQL 过程已成...
【提示】filter 与access 的区别
filter 与 access 的区别filter 是过滤数据,access 是选择表的访问路径。SQL> create table t1 (x int,y int);表已创建。SQL> set autotrace trace exp;SQL> select /*+ rule */ * from t1 where x=5;已用时间:&nbs...
【SQL 优化】异常的逻辑读
实验环境SQL> select * from v$version;BANNER  ...
【SQL 学习】分析函数之RANK() DENSE_RANK ()
SQL> --RANK DENSE_RANK 函数SQL> select prd_type_id,sum(amount), 2 rank() over (order by sum(amount) desc) as rank, 3 dense_rank() over (order by sum(amount) desc) as dense_rank...
【SQL 学习】行列转换
SQL> conn system/yang as sysdba已连接。SQL> conn yang/yang已连接。SQL> create table change (name varchar(10),subject varchar2(20),grade int);表已创建。SQL> set timing onSQL> insert into change values ...
【SQL】表连接七种方式
---交叉连接,即是笛卡儿乘积 是一种将一个表的所有数据与另一个表中的所有的数据进行组合的操作。SQL> select e.ename,d.dname 2 from emp e,dept d;Execution Plan----------------------------------...
【SQL】查找数据的方式 (一)
SQL> set autot on SQL> select rowid, object_id 2 from test 3 where rowid ='AAARVKAAEAAAAD8AAA';ROWID &n...
【SQL 学习】case 表达式
SQL> --使用case 表达式---简单CASE表达式SQL> select product_id,product_type_id , 2 case product_type_id 3 when 1 then 'book' 4 when 2 then 'video' 5 whe...
【SQL 学习】LEVEL 伪列
SQL> select level, employee_id ,manager_id ,first_name ,last_name 2 from emp 3 start with employee_id =1 4 connect by prior employee_id = manager_id 5 o...
【SQL 学习】层次化查询之CONNECT BY 和 START WITH
SQL> select employee_id ,manager_id ,first_name ,last_name 2 from emp 3 start with employee_id =1--- 定义层次化查询的起点 4 connect by prior employee_id = manager_i...