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

¡¾×ª¡¿ OracleÐÔÄÜÓÅ»¯¼¼ÇÉ

OracleÐÔÄÜÓÅ»¯¼¼ÇÉ
http://tech.it168.com/db/o/2006-06-15/200606151715426.shtml
1.Ñ¡ÓÃÊʺϵÄORACLEÓÅ»¯Æ÷
    ORACLEµÄÓÅ»¯Æ÷¹²ÓÐ3ÖÖ:
    1.RULE(»ùÓÚ¹æÔò) 2.COST(»ùÓڳɱ¾) 3.CHOOSE(Ñ¡ÔñÐÔ)
    ÉèÖÃȱʡµÄÓÅ»¯Æ÷,¿ÉÒÔͨ¹ý¶Ôinit.oraÎļþÖÐOPTIMIZER_MODE²ÎÊýµÄ¸÷ÖÖÉùÃ÷,ÈçRULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS . Ä㵱ȻҲÔÚSQL¾ä¼¶»òÊǻỰ(session)¼¶¶ÔÆä½øÐи²¸Ç.
    ΪÁËʹÓûùÓڳɱ¾µÄÓÅ»¯Æ÷(CBO, Cost-Based Optimizer) , Äã±ØÐë¾­³£ÔËÐÐanalyze ÃüÁî,ÒÔÔö¼ÓÊý¾Ý¿âÖеĶÔÏóͳ¼ÆÐÅÏ¢(object statistics)µÄ׼ȷÐÔ.
    Èç¹ûÊý¾Ý¿âµÄÓÅ»¯Æ÷ģʽÉèÖÃΪѡÔñÐÔ(CHOOSE),ÄÇôʵ¼ÊµÄÓÅ»¯Æ÷ģʽ½«ºÍÊÇ·ñÔËÐйýanalyzeÃüÁîÓйØ. Èç¹ûtableÒѾ­±»analyze¹ý, ÓÅ»¯Æ÷ģʽ½«×Ô¶¯³ÉΪCBO , ·´Ö®,Êý¾Ý¿â½«²ÉÓÃRULEÐÎʽµÄÓÅ»¯Æ÷.
    ÔÚȱʡÇé¿öÏÂ,ORACLE²ÉÓÃCHOOSEÓÅ»¯Æ÷, ΪÁ˱ÜÃâÄÇЩ²»±ØÒªµÄÈ«±íɨÃè(full table scan) , Äã±ØÐ뾡Á¿±ÜÃâʹÓÃCHOOSEÓÅ»¯Æ÷,¶øÖ±½Ó²ÉÓûùÓÚ¹æÔò»òÕß»ùÓڳɱ¾µÄÓÅ»¯Æ÷.
    2.·ÃÎÊTableµÄ·½Ê½
    ORACLE ²ÉÓÃÁ½ÖÖ·ÃÎʱíÖмǼµÄ·½Ê½:
    1.È«±íɨÃè
    È«±íɨÃè¾ÍÊÇ˳ÐòµØ·ÃÎʱíÖÐÿÌõ¼Ç¼. ORACLE²ÉÓÃÒ»´Î¶ÁÈë¶à¸öÊý¾Ý¿é(database block)µÄ·½Ê½ÓÅ»¯È«±íɨÃè.
    2.ͨ¹ýROWID·ÃÎʱí
    Äã¿ÉÒÔ²ÉÓûùÓÚROWIDµÄ·ÃÎÊ·½Ê½Çé¿ö,Ìá¸ß·ÃÎʱíµÄЧÂÊ, , ROWID°üº¬Á˱íÖмǼµÄÎïÀíλÖÃÐÅÏ¢..ORACLE²ÉÓÃË÷Òý(INDEX)ʵÏÖÁËÊý¾ÝºÍ´æ·ÅÊý¾ÝµÄÎïÀíλÖÃ(ROWID)Ö®¼äµÄÁªÏµ. ͨ³£Ë÷ÒýÌṩÁË¿ìËÙ·ÃÎÊROWIDµÄ·½·¨,Òò´ËÄÇЩ»ùÓÚË÷ÒýÁеIJéѯ¾Í¿ÉÒԵõ½ÐÔÄÜÉϵÄÌá¸ß.
    3.¹²ÏíSQLÓï¾ä
    ΪÁ˲»Öظ´½âÎöÏàͬµÄSQLÓï¾ä,ÔÚµÚÒ»´Î½âÎöÖ®ºó, ORACLE½«SQLÓï¾ä´æ·ÅÔÚÄÚ´æÖÐ.Õâ¿éλÓÚϵͳȫ¾ÖÇøÓòSGA(system global area)µÄ¹²Ïí³Ø(shared buffer pool)ÖеÄÄÚ´æ¿ÉÒÔ±»ËùÓеÄÊý¾Ý¿âÓû§¹²Ïí. Òò´Ë,µ±ÄãÖ´ÐÐÒ»¸öSQLÓï¾ä(ÓÐʱ±»³ÆΪһ¸öÓαê)ʱ,Èç¹ûËüºÍ֮ǰµÄÖ´ÐйýµÄÓï¾äÍêÈ«Ïàͬ, ORACLE¾ÍÄܺܿì»ñµÃÒѾ­±»½âÎöµÄÓï¾äÒÔ¼°×îºÃµÄÖ´Ðз¾¶. ORACLEµÄÕâ¸ö¹¦ÄÜ´ó´óµØÌá¸ßÁËSQLµÄÖ´ÐÐÐÔÄܲ¢½ÚÊ¡ÁËÄÚ´æµÄʹÓÃ.
    ¿ÉϧµÄÊÇORACLEÖ»¶Ô¼òµ¥µÄ±íÌṩ¸ßËÙ»º³å(cache buffering)


Ïà¹ØÎĵµ£º

oracleË÷ÒýµÄ¼à¿Ø

×î½üµÄÑо¿·¢ÏÖ Oracle Êý¾Ý¿âËùʹÓõÄË÷Òý´ÓÀ´Ã»Óдﵽ¹ý¿ÉÓÃË÷ÒýÊýµÄ1/4£¬
»òÕßÆäÓ÷¨ÓëÆ俪ʼÉè¼ÆµÄÒâͼ²»Ïàͬ¡£Î´ÓõÄË÷ÒýÀ˷ѿռ䣬¶øÇÒ»¹»á½µµÍ DML
µÄËٶȣ¬ÓÈÆäÊÇ UPDATE ºÍ INSERT Óï¾ä;¿ØÊý¾Ý¿âË÷ÒýµÄʹÓã¬ÊÍ·ÅÄÇЩδ±»Ê¹ÓÃ
µÄË÷Òý£¬´Ó¶ø½Úʡά»¤Ë÷ÒýµÄ¿ªÏú£¬ÓÅ»¯sqlÐÔÄÜ
ÔÚ Oracle9i ֮ǰ£¬¼à¿ØË÷ÒýʹÓõÄÎ ......

´«ÖDz¥¿Í 2010 1 18Ê®Æß¡¢ORACLE(1)_°²×°Óë¹ÜÀí


Ò»¡¢Êý¾Ý¿âµÄÏà¹Ø¸ÅÄî
Êý¾Ý¿â£¨DB£©ÊÇÒ»¸ö°´Êý¾Ý½á¹¹À´´æ´¢ºÍ¹ÜÀíÊý¾ÝµÄ¼ÆËã»úÈí¼þϵͳ¡£
1¡¢Êý¾Ý¿â¹ÜÀíϵͳÓëÊý¾Ý¿âÓ¦ÓÃϵͳ
(1)Êý¾Ý¿â¹ÜÀíϵͳ£¨Database Management System£©
Êý¾Ý¿â¹ÜÀíϵͳ£¨DBMS£©ÊÇרÃÅÓÃÓÚ¹ÜÀíÊý¾Ý¿âµÄ¼ÆËã»úϵͳÈí¼þ¡£Êý¾Ý¿â¹ÜÀíϵͳÄܹ»ÎªÊý¾Ý¿âÌṩÊý¾ÝµÄ¶¨Òå¡¢½¨Á¢¡¢Î¬»¤¡¢²éѯºÍͳ¼ÆµÈ²Ù ......

oracleÌØÊ⺯ÊýÓ÷¨

<< 1 >>
decode()º¯數ʹÓü¼ÇÉ
·Èí¼þ»·¾³£º
1¡¢Windows NT4.0+ORACLE 8.0.4
2¡¢ORACLE°²×°Â·¾¶Îª£ºC:\ORANT
·º¬Òå½âÊÍ£º
decode(Ìõ¼þ,Öµ1,·­ÒëÖµ1,Öµ2,·­ÒëÖµ2,...Öµn,·­ÒëÖµn,ȱʡֵ)
¸Ãº¯ÊýµÄº¬ÒåÈçÏ£º
IF Ìõ¼þ=Öµ1 THEN
¡¡¡¡¡¡¡¡RETURN(·­ÒëÖµ1)
ELSIF Ìõ¼þ=Öµ2 THEN
¡¡¡ ......

oracleѧϰ±Ê¼Ç£¨Ò»£©·ÖÏí

1¡¢»ù±¾Óï·¨
SELECT
from
WHERE
GROUP BY
HAVING
ORDER BY
SELECT:²éѯµÄ×Ö¶Î
1¡¢¿ÉÓÃ*±íʾËùÓÐ×ֶΡ£
2¡¢×Ö¶ÎÖ®¼äÓöººÅ·Ö¸î¡£
3¡¢¿ÉΪ×Ö¶ÎÆð±ðÃû Æä±ðÃû¿Éд³ÉSELECT AAAA¡£AA AS SS »ò AAAA¡£AA SS ¿ÉÊ¡ÂÔas
4¡¢¿ÉÖ±½Óд×Ö¶ÎÖµ£ºÈç SELECT AAAA¡£AA SS,'ÕÅÈý' NAME from ¡£¡£¡£
from:²éѯµÄ±íÃû
1¡¢±íà ......

oracle ÎïÀí½á¹¹¹¹Êö

Êý¾ÝÎļþ
¡¡¡¡Ã¿Ò»¸öOracleÊý¾Ý¿â¶¼ÓÐÒ»¸ö»ò¶à¸öÎïÀíµÄÊý¾ÝÎļþ,Êý¾Ý¿âÐÅÏ¢(½á¹¹,Êý¾Ý)¶¼±£´æÔÚÕâЩÊý¾ÝÎļþÖÐ,²¢ÇÒÕâЩÎļþÒ²Ö»Oracle²ÅÄܹ»½âÊÍÓë¹ÜÀíÕâЩ´æ´¢.OracleÊý¾ÝÎļþ¾ßÓÐÒÔÏÂһЩÌØÐÔ:
¡¡¡¡1.Ò»¸öÊý¾ÝÎļþ½ö½ö¹ØÁªÒ»¸öÊý¾Ý¿â,Êý¾ÝÎļþÓëÊý¾Ý¿âÖ®¼ä¶ÔÓ¦¹ØϵÊÇÒ»¶ÔÒ»¹Øϵ,µ±È»·´¹ýÊý¾Ý¿âÓëÊý¾ÝÎļþÊÇÒ»¶Ô¶à¹Øϵ. ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ