Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Oracle ±íÁ¬½Ó·½Ê½½éÉÜ£¨SML + NL + HJ£©

JoinÊÇÒ»ÖÖÊÔͼ½«Á½¸ö±í½áºÏÔÚÒ»ÆðµÄν´Ê£¬Ò»´ÎÖ»ÄÜÁ¬½Ó2¸ö±í£¬±íÁ¬½ÓÒ²¿ÉÒÔ±»³ÆÎª±í¹ØÁª¡£ÔÚºóÃæµÄÐðÊöÖУ¬ÎÒÃǽ«»áʹÓÔrow source”À´´úÌæ”±í”£¬ÒòΪʹÓÃrow source¸üÑϽ÷һЩ£¬²¢ÇÒ½«²ÎÓëÁ¬½ÓµÄ2¸örow source·Ö±ð³ÆÎªrow source1ºÍrow source 2¡£Join¹ý³ÌµÄ¸÷¸ö²½Öè¾­³£ÊÇ´®ÐвÙ×÷£¬¼´Ê¹Ïà¹ØµÄrow source¿ÉÒÔ±»²¢ÐзÃÎÊ£¬¼´¿ÉÒÔ²¢ÐеĶÁÈ¡×öjoinÁ¬½ÓµÄÁ½¸örow sourceµÄÊý¾Ý£¬µ«ÊÇÔÚ½«±íÖзûºÏÏÞÖÆÌõ¼þµÄÊý¾Ý¶ÁÈëµ½ÄÚ´æÐγÉrow sourceºó£¬joinµÄÆäËü²½ÖèÒ»°ãÊÇ´®Ðеġ£ÓжàÖÖ·½·¨¿ÉÒÔ½«2¸ö±íÁ¬½ÓÆðÀ´£¬µ±È»Ã¿ÖÖ·½·¨¶¼ÓÐ×Ô¼ºµÄÓÅȱµã£¬Ã¿ÖÖÁ¬½ÓÀàÐÍÖ»ÓÐÔÚÌØ¶¨µÄÌõ¼þϲŻᷢ»Ó³öÆä×î´óÓÅÊÆ¡£
¡¡¡¡row source(±í)Ö®¼äµÄÁ¬½Ó˳Ðò¶ÔÓÚ²éѯµÄЧÂÊÓзdz£´óµÄÓ°Ï졣ͨ¹ýÊ×ÏÈ´æÈ¡Ìض¨µÄ±í£¬¼´½«¸Ã±í×÷ΪÇý¶¯±í£¬ÕâÑù¿ÉÒÔÏÈÓ¦ÓÃijЩÏÞÖÆÌõ¼þ£¬´Ó¶øµÃµ½Ò»¸ö½ÏСµÄrow source£¬Ê¹Á¬½ÓµÄЧÂʽϸߣ¬ÕâÒ²¾ÍÊÇÎÒÃdz£ËµµÄÒªÏÈÖ´ÐÐÏÞÖÆÌõ¼þµÄÔ­Òò¡£Ò»°ãÊÇÔÚ½«±í¶ÁÈëÄÚ´æÊ±£¬Ó¦ÓÃwhere×Ó¾äÖжԸñíµÄÏÞÖÆÌõ¼þ¡£
¡¡¡¡¸ù¾Ý2¸örow sourceµÄÁ¬½ÓÌõ¼þµÄÖвÙ×÷·ûµÄ²»Í¬£¬¿ÉÒÔ½«Á¬½Ó·ÖΪµÈÖµÁ¬½Ó(ÈçWHERE A.COL3 = B.COL4)¡¢·ÇµÈÖµÁ¬½Ó(WHERE A.COL3 > B.COL4)¡¢ÍâÁ¬½Ó(WHERE A.COL3 = B.COL4(+))¡£ÉÏÃæµÄ¸÷¸öÁ¬½ÓµÄÁ¬½ÓÔ­Àí¶¼»ù±¾Ò»Ñù£¬ËùÒÔΪÁ˼òµ¥ÆÚ¼ä£¬ÏÂÃæÒÔµÈÖµÁ¬½ÓΪÀý½øÐнéÉÜ¡£
¡¡¡¡ÔÚºóÃæµÄ½éÉÜÖУ¬¶¼ÒÑ£º
¡¡¡¡SELECT A.COL1, B.COL2
¡¡¡¡from A, B
¡¡¡¡WHERE A.COL3 = B.COL4;
¡¡¡¡ÎªÀý½øÐÐ˵Ã÷£¬¼ÙÉèA±íΪRow Soruce1£¬ÔòÆä¶ÔÓ¦µÄÁ¬½Ó²Ù×÷¹ØÁªÁÐΪCOL 3£»B±íΪRow Soruce2£¬ÔòÆä¶ÔÓ¦µÄÁ¬½Ó²Ù×÷¹ØÁªÁÐΪCOL 4£»
¡¡¡¡Á¬½ÓÀàÐÍ£º
¡¡¡¡Ä¿Ç°ÎªÖ¹£¬ÎÞÂÛÁ¬½Ó²Ù×÷·ûÈçºÎ£¬µäÐ͵ÄÁ¬½ÓÀàÐ͹²ÓÐ3ÖÖ£º
¡¡¡¡ÅÅÐò - - ºÏ²¢Á¬½Ó(Sort Merge Join (SMJ) )
¡¡¡¡Ç¶Ì×Ñ­»·(Nested Loops (NL) )
¡¡¡¡¹þÏ£Á¬½Ó(Hash Join)
¡¡¡¡ÅÅÐò - - ºÏ²¢Á¬½Ó(Sort Merge Join, SMJ)
¡¡¡¡ÄÚ²¿Á¬½Ó¹ý³Ì£º
¡¡¡¡1) Ê×ÏÈÉú³Érow source1ÐèÒªµÄÊý¾Ý£¬È»ºó¶ÔÕâЩÊý¾Ý°´ÕÕÁ¬½Ó²Ù×÷¹ØÁªÁÐ(ÈçA.col3)½øÐÐÅÅÐò¡£
¡¡¡¡2) ËæºóÉú³Érow source2ÐèÒªµÄÊý¾Ý£¬È»ºó¶ÔÕâЩÊý¾Ý°´ÕÕÓësort source1¶ÔÓ¦µÄÁ¬½Ó²Ù×÷¹ØÁªÁÐ(ÈçB.col4)½øÐÐÅÅÐò¡£
¡¡¡¡3) ×îºóÁ½±ßÒÑÅÅÐòµÄÐб»·ÅÔÚÒ»ÆðÖ´Ðкϲ¢²Ù×÷£¬¼´½«2¸örow source°´ÕÕÁ¬½ÓÌõ¼þÁ¬½ÓÆðÀ´
¡¡¡¡ÏÂÃæÊÇÁ¬½Ó²½ÖèµÄͼÐαíʾ£º
¡¡¡¡MERGE
¡¡¡¡/\
¡¡¡¡SORTSORT
¡¡¡¡||
¡¡¡¡Row Source 1Row Source 2
¡¡¡¡Èç¹ûrow sourceÒѾ­ÔÚ


Ïà¹ØÎĵµ£º

Oracle·ÖÎöº¯Êý£¨Í¬±È£¬»·±È£¬Àۼƣ¬»ù±È£©

CREATE TABLE salaryByMonth
(
 employeeNo varchar2(20),
 yearMonth varchar2(6),
 salary number
) ;
insert into SALARYBYMONTH (EMPLOYEENO, YEARMONTH, SALARY)
values (1, '200805', 500);
insert into SALARYBYMONTH (EMPLOYEENO, YEARMONTH, SALARY)
values (1, '200802', 150);
in ......

¡¶TOADÓëOracleÍŶӿª·¢Á÷³ÌÔÙÔì¡·¼¼Êõ½²×ù

      Éí¾ÓOracle ¹Ø¼üÓ¦ÓõĿª·¢ºÍά»¤ÍŶӣ¬ÄúÒ»¶¨ÉîÖªÑз¢¹ÜÀíµÄÖØÒª¡£ÈçºÎÀûÓÃרҵ»¯Oracle ÍŶӿª·¢½â¾ö·½°¸£¬ÊµÏÖ¸ßЧµÄÍŶӿª·¢¡¢×î¼ÑÓ¦ÓÃÐÔÄܺÍÀíÏëµÄ½»¸¶ÖÊÁ¿£¬ÊÇQuest Software±¾´ÎÓëÄú̽ÌֵĺËÐÄ»°Ìâ¡£
 
      ´ÓÊý¾Ý¿âµÄÉè¼Æ¡¢½¨Ä£¡¢±àÂ룬µ½Ó ......

oracleÖв鿴Óû§È¨ÏÞ

ORACLEÖÐÊý¾Ý×ÖµäÊÓͼ·ÖΪ3´óÀà,     ÓÃÇ°×ºÇø±ð£¬·Ö±ðΪ£ºUSER£¬ALL ºÍ DBA£¬Ðí¶àÊý¾Ý×ÖµäÊÓͼ°üº¬ÏàËÆµÄÐÅÏ¢¡£
USER_*:ÓйØÓû§ËùÓµÓеĶÔÏóÐÅÏ¢£¬¼´Óû§×Ô¼º´´½¨µÄ¶ÔÏóÐÅÏ¢
ALL_*£ºÓйØÓû§¿ÉÒÔ·ÃÎʵĶÔÏóµÄÐÅÏ¢£¬¼´Óû§×Ô¼º´´½¨µÄ¶ÔÏóµÄÐÅÏ¢¼ÓÉÏÆäËûÓû§´´½¨µÄ¶ÔÏ󵫸ÃÓû§ÓÐȨ·ÃÎʵÄÐÅÏ¢
DBA_* ......

ɱOracle½ø³Ì

alter system kill session '²é³öµÄsid,²é³öµÄserial#';
ͨ過數據×ÖµäV$SESSION與V$LOCK來瞭½âÕýÔڵȴý鎖資Ô´µÄÓÃ戶
select a.username,a.sid,a.serial#,b.id1 from v$session a ,v$lock b
         Where a.lockwait ......

oracleÌøÔ¾Ë÷ÒýµÄÓ¦Óó¡ºÏ

     Ë÷ÒýÌøÔ¾Ê½É¨Ãè(index skip scan)ÊÇOracle9iµÄÒ»¸öеÄÖ´ÐÐÌØÐÔ£¬ÓÈÆäÊÊÓÃÓÚʹÓÃÁ¬½ÓË÷ÒýºÍ·ÃÎʶàÖµË÷ÒýµÄOracle²éѯ¡£
     Ë÷ÒýÌøÔ¾Ê½É¨Ãè(index skip scan)ÊÇOracle9iµÄÒ»¸öеÄÖ´ÐÐÌØÐÔ£¬ÓÈÆäÊÊÓÃÓÚʹÓÃÁ¬½ÓË÷ÒýºÍ·ÃÎʶàÖµË÷ÒýµÄOracle²éѯ¡£ÈÃÎÒÃÇ¿´ÒÔϵķ¶Àý¡£Çë×¢Òâ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ