【oracle分区技术提高查询效率】教程文章相关的互联网学习教程文章

查询oracle 数据库中回滚段中一个时间点被修改的表数据并还原表中原来数据【代码】

利用下面的SQL就可以查处最近更改的数据。SQL> SELECT ID,NAME,VERSIONS_STARTTIME,VERSIONS_ENDTIME,VERSIONS_OPERATION FROM TEST VERSIONS BETWEEN TIMESTAMP MINVALUE AND MAXVALUE WHERE VERSIONS_STARTTIME IS NOT NULL ORDER BY VERSIONS_STARTTIME DESC;通过以上小实验可以看出,VERSIONS_STARTTIME是数据被修改的起始时间,VERSIONS_ENDTIME是数据被修改后新数据的有效时间,也就是VERSIONS_STARTTIME和VERSIONS_ENDTIM...

Oracle中关于处理小数点位数的几个函数,取小数位数,Oracle查询函数

关于处理小数点位数的几个oracle函数()1. 取四舍五入的几位小数select round(1.2345, 3) from dual;结果:1.2352. 保留两位小数,只舍select trunc(1.2345, 2) from dual;结果:1.23select trunc(1.2399, 2) from dual;结果:1.233.取整数返回大于或等于x的最大整数: SQL> select ceil(23.33) from dual; 结果: 24 返回等于或小于x的最大整数: SQL> select fl...

Oracle查询总结【代码】

-------------------------------多表查询----------------------------------------笛卡尔积查询.select*from emp,dept;--结果为64条,emp表有14条,dept表有4条 --别名查询 --改变查询后的结果显示的列名,在字段后面写要显示的列名(注意一定要用双引号括起来,oracle查询中之后这里用到双引号!)select ename "name" ,loc "地点" from emp e ,dept d where e.deptno = d.deptno;--查询出雇员的编号,姓名,部门的编号和名称,地址select...

oracle数据库查询锁表及杀进程

SELECT A.OWNER, A.OBJECT_NAME, B.XIDUSN, B.XIDSLOT, B.XIDSQN, B.SESSION_ID, B.ORACLE_USERNAME, B.OS_USER_NAME, B.PROCESS, B.LOCKED_MODE, C.MACHINE, C.STATUS, C.SERVER, C.SID, C.SERIAL#, C.PROGRAM FROM ALL_OBJECTS A, V$LOCKED_OBJECT B, SYS.GV_$SESSION C WHERE (A.OBJECT_ID = B.OBJECT_ID) AND (B.PROCESS = C.P...

Oracle递归查询【代码】

存储数据关系的时,表结构关系会存在一种树形关系,比如通过一个parentId字段来关联,下面用一个简单的小例子来描述Oracle中的递归查询创建表CREATE TABLE COMMENTS (COMMENTID INTEGER, PARENTID INTEGER, ARTICLEID INTEGER, COMMENTBODY VARCHAR2(500)); 插入初始化数据INSERT INTO COMMENTS (COMMENTID, PARENTID, ARTICLEID, COMMENTBODY) VALUES (1, null, 1, ‘第一条评论‘); INSERT INTO COMMENTS (COMMENTID, PARENTID, ART...

Oracle查询性能优化【代码】

原则一:注意WHERE子句中的连接顺序: ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾. 尤其是“主键ID=?”这样的条件。 原则二: SELECT子句中避免使用 ‘ * ‘: ORACLE在解析的过程中, 会将‘*‘ 依次转换成所有的列名, 这个工作是通过查询数据字典完成的, 这意味着将耗费更多的时间 。 简单地讲,语句执行的时间越短越...

彻底搞懂oracle的标量子查询

oracle标量子查询和自己定义函数有时用起来比較方便,并且开发者也常常使用。数据量小还无所谓。数据量大,往往存在性能问题。 下面測试帮助大家彻底搞懂标量子查询。SQL> create table a (id int,name varchar2(10)); Table created. SQL> create table b (id int,name varchar2(10)); Table created. SQL> insert into a values (1,'a1'); 1 row created. SQL> insert into a values (2,'a2'); 1 row created. SQL> insert into ...

Oracle查询性能优化【代码】

本人在学习Oracle的过程中自己的感悟和网上其他大神的心得,有什么不对的地方希望大家指正!原则一:注意WHERE子句中的连接顺序: ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾. 尤其是“主键ID=?”这样的条件。 原则二: SELECT子句中避免使用 ‘ * ‘: ORACLE在解析的过程中, 会将‘*‘ 依次转换成所有的列名, 这个工...

Oracle递归查询【代码】【图】

一、创建数据1.1、建立表与插入数据CREATE TABLE DISTRICT (ID NUMBER(10) NOT NULL,PARENT_ID NUMBER(10),NAME VARCHAR2(255 BYTE) NOT NULL );ALTER TABLE DISTRICT ADD (CONSTRAINT DISTRICT_PKPRIMARY KEY(ID));ALTER TABLE DISTRICT ADD (CONSTRAINT DISTRICT_R01 FOREIGN KEY (PARENT_ID) REFERENCES DISTRICT (ID));insert into DISTRICT (id, parent_id, name) values (1, null,...

2014年1月24日 Oracle 连接查询与子查询

1.乘积连接: 源表、源数据交叉链接,结果集数量为源数据之间的乘积2.相等链接: 通过where关联几个数据源中的某一字段进行链接3.自链接 自己链接自己 SSF A a1, A a24.不等链接 between C and C25.外连接 select * from A,B where A.C1 (+)= B.C1 若不加“(+)”则只返回相互关联成功的数据,若加了 (+) 则返回所有结果,无法关联的数据集字段内容为空6.ALL select * from A where A.C > ALL( select C fr...

oracle like模糊查询简单用法【图】

like 用法介绍:1、“_”:匹配单个任意字符select * from bqh3 where name like ‘_崔‘; 2、“%”:匹配0个或多个任意字符。但有三种情况如下: like %关键字:以关键字开头的记录 like 关键字%:以关键字结尾的记录 like %关键字% :包含以关键字的记录查询以A开头的全部信息select * from bqh3 where name like ‘A%‘查询第二个字母以A开头的全部信息:select * from bqh3 where name like ‘_A%‘ 查询字母中...

oracle查询不等于条件包含null值

需求:现在oracle数据库中有字段is_use 的值有:null,0,1,2。现在需要查询不等于2的数据解决办法的sql: select * from uc_Users where nvl(is_use,‘xx‘)<>‘2‘=======================================nvl(is_use,‘xx‘)的意思是:如果is_use为null,值为xx。如果用select * from uc_Users where is_use<>‘2‘ 只会查询出0,1的数据。null的数据查询不出来。===============================================至于为什么查询不...

oracle数据库查询分组之外的数据方法

select * from (select t.*,row_number() over(partition by 分组字段 order by rownum) rn from 表名 t where 条件语句) where rn= 分组中的第几条;引用:https://blog.csdn.net/liuhaolian/article/details/89375042 原文:https://www.cnblogs.com/wym789/p/11475742.html

shell调用sqlplus查询oracle【代码】

[oracle@hb shell_test]$ cat echo_time #!/bin/sh一.最简单的调用sqlplus sqlplus -S "sys/unimas as sysdba" << ! select to_char(sysdate,‘yyyy-mm-dd‘) today from dual; exit; ![oracle@hb shell_test]$ ./echo_time 运行结果:TODAY ---------- 2011-03-21-S 是silent mode,不输出类似“SQL>”,连接数据库,关闭数据库之类的信息。EOFeof可以是任何字符串 比如"laldf"那么当你输入单独一行laldf时"shell认为输入结束,但...

Oracle分层查询【代码】

1.对于表中行与行存在父子关系时,可以通过connect by查询方式,查询行与行之间的父子关系select lpad(‘-‘,(level-1),‘-‘)|| empno as tempno,ename,mgr,level,decode(level,1,1) as root,decode(connect_by_isleaf,1,1) as leafnodefrom emp start with empno=7566 connect by (prior empno) = mgr orderbylevel;除了level伪列外,connect_by_isleaf也是伪列,1表示没有子记录,0则相反2.当需要把表中某一属性按照父子关系拼接...