ORACLEÍâÁ¬½ÓС½á~
ºÃ¼¸´ÎÏëÓõ½ÍâÁ¬½ÓµÄʱºò¶¼ÍüÁ˾ßÌåµÄÓ÷¨ÊÇÔõÑùµÄ£¬±ÈÈç˵£¨+£©¸Ã¼ÓÔڵȺŵÄÄÄÒ»¶Ë£¬»òÕßLFET OUTER JOIN¸ÃÓÃÔÚÕûÌõÓï¾äÖеÄÄĸö²¿·Ö¡£½ñÌìÕýºÃÓÖÅöµ½Ò»¸öÏà¹ØµÄÎÊÌ⣬½è´Ë»ú»á×ܽáһϣ¬ÒÔºóÒ²·½±ã²éѯ£¬²»ÓÃÿ´Î¶¼È¥°Ù¶ÈÁË¡£
//table1ºÍtable2ΪÁ½¸ö²âÊÔ±í Ëæ±ã²åÈ뼸ÌõÊý¾Ý
SQL> select * from table1;
ID NAME
---------- --------------------
1 wh
2 wp
3 wq
SQL> select * from table2;
ID NAME
---------- --------------------
4 wr
1 wh
//Õý³£²éѯ
SQL> select a.name,b.name
2 from table1 a,table2 b
3 where a.id=b.id;
NAME NAME
-------------------- --------------------
wh wh
//ÏÔʾ³ötable1ÖеÄËùÓмǼ table2ÖÐÎÞÏàÓ¦¼Ç¼ÔòÖÃNULL
SQL> select a.name,b.name
2 from table1 a,table2 b
3 where a.id=b.id(+);
NAME NAME
-------------------- --------------------
wh wh
wq
wp
//ÏÔʾ³ötable2ÖеÄËùÓмǼ table1ÖÐÎÞÏàÓ¦¼Ç¼ÔòÖÃNULL
SQL> select a.name,b.name
2 from table1 a,table2 b
3 where a.id(+)=b.id;
NAME NAME
-------------------- --------------------
wh wh
wr
//ºÇºÇ,ÕâÀï±¾Ïë³¢ÊÔÒ»ÏÂÈ«ÍâÁ¬½Ó,²»¹ýʹÓÃ(+)ºÃÏñ²»ÐÐ
SQL> select a.name,b.name
2 from table1 a,table2 b
3 where a.id(+)=b.id(+);
where a.id(+)=b.id(+)
*
ERROR at line 3:
ORA-01468: a predicate may reference only one outer-joined table
//×óÍâÁ¬½Ó
SQL> select a.name,b.name
2 from table1 a
3 left outer join table2 b
4 on a.id=b.id;
NAME NAME
-------------------- --------------------
wh wh
wq
wp
//ÓÒÍâÁ¬½Ó
SQL> select a.name,b.name
2 from table1 a
3 right outer join table2 b
4 on a.id=b.id;
NAME NAME
-------------------- --------------------
wh wh
wr
//ÓÒÍâÁ¬½Ó
SQL> select a.name,b.name
2 from table2 b
3 right outer join table1 a
Ïà¹ØÎĵµ£º
oracleÖÐconnect by priorʵÏֵݹé²éѯ
ÊÕ¼¯µÄ¼¸ÌõÔÚoracleÖÐͨ¹ýconnect by priorÀ´ÊµÏֵݹé²éѯ
Start with...Connect By×Ó¾äµÝ¹é²éѯһ°ãÓÃÓÚÒ»¸ö±íά»¤Ê÷ÐνṹµÄÓ¦Óá£
´´½¨Ê¾Àý±í£º
CREATE TABLE TBL_TEST
(
ID NUMBER,
NAME VARCHAR2(100 BYTE),
PID NUMBER   ......
À´×Ôhttp://www.inthirties.com/thread-239-1-1.html
ÔÚÕâÀï»á½éÉÜUNDO£¬REDOÊÇÈçºÎ²úÉúµÄ£¬¶ÔTRANSACTIONSµÄÓ°Ï죬ÒÔ¼°ËûÃÇÖ®¼äÈçºÎÐͬ¹¤×÷µÄ¡£
ʲôÊÇREDO
REDO¼Ç¼transaction logs£¬·ÖΪonlineºÍarchived¡£ÒÔ»Ö¸´ÎªÄ¿µÄ¡£
±ÈÈ磬»úÆ÷Í£µç£¬ÄÇôÔÚÖØÆðÖ®ºóÐèÒªonline redo logsÈ¥»Ö¸´ÏµÍ³µ ......
½ñÌì¿´µ½Ò»Æª¹ØÓÚORCLEµÄÂß¼±¸·Ý£¬Àä¡¢Èȱ¸·ÝµÄÌû×Ó½²µÄͦºÃµÄ£¬²»¹ýÕâÆªÎÄÕÂÊÇÒÔORACLE 7ΪÀý×Ó£¬ËäÈ»ÏÖÔÚÒѾÓкܺúÜÇ¿´óµÄRMAN£¬µ«»¹ÊǾõµÃÓбØÒª×ª¹ýÀ´£¬²»ÄÜϲÐÂÑá¾ÉÂï¡£
==================================================================================
OracleÊý¾Ý¿âµÄ±¸·ÝÓë»Ö¸´
---- µ±ÎÒÃÇ ......
ÔÚSQLÓï¾äÓÅ»¯¹ý³ÌÖУ¬¾³£»áÓõ½hint,ÏÂÃæÎÒÃÇÀ´½éÉÜÒ»ÏÂÔÚSQLÓÅ»¯¹ý³ÌÖг£¼ûOracleÖÐ"HINT"µÄ30¸öÓ÷¨£º
¡¡¡¡1. /*+ALL_ROWS*/
¡¡¡¡±íÃ÷¶ÔÓï¾ä¿éÑ¡Ôñ»ùÓÚ¿ªÏúµÄÓÅ»¯·½·¨,²¢»ñµÃ×î¼ÑÍÌÍÂÁ¿,ʹ×ÊÔ´ÏûºÄ×îС»¯¡£
¡¡¡¡2. /*+FIRST_ROWS*/
¡¡¡¡±íÃ÷¶ÔÓï¾ä¿éÑ¡Ôñ»ùÓÚ¿ªÏúµÄÓÅ»¯·½·¨,²¢»ñµÃ×î¼ÑÏìӦʱ¼ä,ʹ×ÊÔ´ÏûºÄ×îÐ ......
ĬÈÏÇé¿öÏ£¬ÔÚOracleµÄÖ÷»úÉÏ£¨linuxϵͳ£©µÄOracle²Ù×÷ϵͳÓû§Ï£¬ÒÔsysÓû§µÇ½Êý¾Ý¿âʱ¿ÉÒÔ²»ÓÃÊäÈëÃÜÂëÖ±½ÓµÇ¼¡£Êµ¼ÊÉÏ£¬Ö»ÒªÊÇÊôÓÚdba×飨linux£©»òosdba×飨windows£©Ï£¬¶¼¿ÉÒÔ²»ÓÃÃÜÂë½øÐеǼ¡£ÕâÊÇÈÏÖ¤·½Ê½³ÆÎªOSÈÏÖ¤¡£
ÕâÖֵǼ·½Ê½µÄ¿ØÖÆ£¬ÊÇͨ¹ý$ORACLE_HOME/network/admin/sqlnet.oraÖеģº
SQLNET.AUTH ......