Oracle Connect ByÓ÷¨
Oracle Connect ByÓ÷¨
oracleÖеÄselectÓï¾ä¿ÉÒÔÓÃSTART WITH...CONNECT BY PRIOR×Ó¾äʵÏֵݹé²éѯ£¬connect by Êǽṹ»¯²éѯÖÐÓõ½µÄ£¬Æä»ù±¾Óï·¨ÊÇ£º
select ... from <TableName>
where <Conditional-1>
start with <Conditional-2>
connect by <Conditional-3>
;
<Conditional-1>£º¹ýÂËÌõ¼þ£¬ÓÃÓÚ¶Ô·µ»ØµÄËùÓмǼ½øÐйýÂË¡£
<Conditional-2>£º²éѯ½á¹ûÖØÆðʼ¸ù½áµãµÄÏÞ¶¨Ìõ¼þ¡£
<Conditional-3>£ºÁ¬½ÓÌõ¼þ
Êý¾Ý¿â±í½á¹¹ÈçÏ£º
create table t2(
root_id number,
id number,
name varchar(5),
description varchar(10)
);
insert into t2(root_id,id,name,description) values(0,1,'a','aaa');
insert into t2(root_id,id,name,description) values(1,2,'a1','aaa1');
insert into t2(root_id,id,name,description) values(1,3,'a2','aaa2');
insert into t2(root_id,id,name,description) values(0,4,'b','bbb');
insert into t2(root_id,id,name,description) values(4,5,'b1','bbb1');
insert into t2(root_id,id,name,description) values(4,6,'b2','bbb2');
»ñÈ¡ÍêÕûÊ÷£º
select * from t2 start with root_id = 0 connect by prior id = root_id;
»ñÈ¡ÌØ¶¨×ÓÊ÷£º
select * from t2 start with id = 1 connect by prior id = root_id;
select * from t2 start with id = 4 connect by prior id = root_id;
Èç¹ûconnect by priorÖеÄprior±»Ê¡ÂÔ£¬Ôò²éѯ½«²»½øÐÐÉî²ãµÝ¹é¡£
È磺
select * from t2 start with root_id = 0 connect by id = root_id;
select * from t2 start with id = 1 connect by id = root_id;
Ïà¹ØÎĵµ£º
OracleÁÙʱ±í¿ÉÒÔ˵ÊÇÌá¸ßÊý¾Ý¿â´¦ÀíÐÔÄܵĺ÷½·¨£¬ÔÚûÓбØÒª´æ´¢Ê±£¬Ö»´æ´¢ÔÚOracleÁÙʱ±í¿Õ¼äÖС£Ï£Íû±¾ÎÄÄܶԴó¼ÒÓÐËù°ïÖú¡£
1 ¡¢Ç°ÑÔ
ĿǰËùÓÐʹÓà Oracle ×÷ΪÊý¾Ý¿âÖ§³Åƽ̨µÄÓ¦Ó㬴󲿷ÖÊý¾ÝÁ¿±È½ÏÅÓ´óµÄϵͳ£¬¼´±íµÄÊý¾ÝÁ¿Ò»°ãÇé¿ö϶¼ÊÇÔÚ°ÙÍò¼¶ÒÔÉϵÄÊý¾ÝÁ¿¡£
µ±È»ÔÚ Oracle Öд´½¨·ÖÇøÊÇÒ»ÖÖ²»´íµÄÑ¡Ôñ£¬µ« ......
¶ÔÓÚ Oracle µÄ rownum ÎÊÌ⣬ºÜ¶à×ÊÁ϶¼Ëµ²»Ö§³Ö>,>=,=,between...and£¬Ö»ÄÜÓÃÒÔÉÏ·ûºÅ(<¡¢<=¡¢!=)£¬²¢·Ç˵ÓÃ>,>=,=,between..and ʱ»áÌáʾSQLÓï·¨´íÎ󣬶øÊǾ³£ÊDz鲻³öÒ»Ìõ¼Ç¼À´£¬»¹»á³öÏÖËÆºõÊÇĪÃûÆäÃîµÄ½á¹ûÀ´£¬ÆäʵÄúÖ»ÒªÀí½âºÃÁËÕâ¸ö rownum αÁеÄÒâÒå¾Í²»Ó¦¸Ã¸Ðµ½¾ªÆæ£¬Í¬ÑùÊÇαÁУ¬r ......
Ò»¡¢ ROWIDµÄ¸ÅÄî
¡¡¡¡´æ´¢
ÁËrowÔÚÊý¾ÝÎļþÖеľßÌåλÖãº64λ±àÂëµÄÊý¾Ý£¬A-Z, a-z, 0-9, +, ºÍ /£¬
¡¡¡¡rowÔÚÊý¾Ý¿éÖеĴ洢
·½Ê½
¡¡¡¡SELECT ROWID, last_name from hr.employees WHERE department_id = 20;
¡¡¡¡±ÈÈ磺OOOOOOFFFBBBBBBRRR
¡¡¡¡OOOOOO£ºdata object number, ¶ÔÓ¦dba_objects.data_object_id
¡¡¡ ......
1.¾ø¶ÔÖµ
S:select abs(-1) value
O:select abs(-1) value from dual
2.È¡Õû(´ó)
S:select ceiling(-1.001) value
O:select ceil(-1.001) value from dual
3.È¡Õû£¨Ð¡£©
S:select floor(-1.001) value
O:select floor(-1.001) value from dual
4.È ......
http://hi.baidu.com/firefly5002/blog/item/5b5719fcb5bd3e1d08244d11.html
Oracle 10G DataGuard
server A: 10.85.10.44 SID=mesdb
target server B: 10.85.10.43
oracle version:10.2.0.1
OS platform : windows 2003
Data GuardĬÈÏÊÇmaximize performance£¬ ¿ÉÒÔÓÃÒÔÏÂÓï¾äÀ´½øÐÐģʽ¼äµÄÇл»¡£
ALTER DATABASE ......