oracle HINTS µÄʹÓÃ
Õª×ÔÐìÓñ½ðµÄ<<sqlÐÔÄܵĵ÷Õû-×ܽá>>
ÈçºÎʹÓÃhints:
HintsÖ»Ó¦ÓÃÔÚËüÃÇËùÔÚsqlÓï¾ä¿é(statement block£¬ÓÉselect¡¢update¡¢delete¹Ø¼ü×Ö±êʶ)ÉÏ£¬¶ÔÆäËüSQLÓï¾ä»òÓï¾äµÄÆäËü²¿·ÖûÓÐÓ°Ïì¡£È磺¶ÔÓÚʹÓÃunion²Ù×÷µÄ2¸ösqlÓï¾ä£¬Èç¹ûÖ»ÔÚÒ»¸ösqlÓï¾äÉÏÓÐhints£¬Ôò¸Ãhints²»»áÓ°ÏìÁíÒ»¸ösqlÓï¾ä¡£
ÎÒÃÇ¿ÉÒÔʹÓÃ×¢ÊÍ(comment)À´ÎªÒ»¸öÓï¾äÌí¼Óhints£¬Ò»¸öÓï¾ä¿éÖ»ÄÜÓÐÒ»¸ö×¢ÊÍ£¬¶øÇÒ×¢ÊÍÖ»ÄÜ·ÅÔÚSELECT, UPDATE, or DELETE¹Ø¼ü×ֵĺóÃæ
ʹÓÃhintsµÄÓï·¨£º
{DELETE|INSERT|SELECT|UPDATE} /*+ hint [text] [hint[text]]... */
or
{DELETE|INSERT|SELECT|UPDATE} --+ hint [text] [hint[text]]...
×¢½â£º
1) DELETE¡¢INSERT¡¢SELECTºÍUPDATEÊDZêʶһ¸öÓï¾ä¿é¿ªÊ¼µÄ¹Ø¼ü×Ö£¬°üº¬ÌáʾµÄ×¢ÊÍÖ»ÄܳöÏÖÔÚÕâЩ¹Ø¼ü×ֵĺóÃæ£¬·ñÔòÌáʾÎÞЧ¡£
2) “+”ºÅ±íʾ¸Ã×¢ÊÍÊÇÒ»¸öhints£¬¸Ã¼ÓºÅ±ØÐëÁ¢¼´¸úÔÚ”/*”µÄºóÃæ£¬Öм䲻ÄÜÓпոñ¡£
3) hintÊÇÏÂÃæ½éÉܵľßÌåÌáʾ֮һ£¬Èç¹û°üº¬¶à¸öÌáʾ£¬Ôòÿ¸öÌáʾ֮¼äÐèÒªÓÃÒ»¸ö»ò¶à¸ö¿Õ¸ñ¸ô¿ª¡£
4) text ÊÇÆäËü˵Ã÷hintµÄ×¢ÊÍÐÔÎı¾
Èç¹ûÄãûÓÐÕýÈ·µÄÖ¸¶¨hints£¬Oracle½«ºöÂÔ¸Ãhints£¬²¢ÇÒ²»»á¸ø³öÈκδíÎó¡£
ʹÓÃÈ«Ì×µÄhints£º
µ±Ê¹ÓÃhintsʱ£¬ÔÚijЩÇé¿öÏ£¬ÎªÁËÈ·±£ÈÃÓÅ»¯Æ÷²úÉú×îÓŵÄÖ´Ðмƻ®£¬ÎÒÃÇ¿ÉÄÜÖ¸¶¨È«Ì×µÄhints¡£ÀýÈ磬Èç¹ûÓÐÒ»¸ö¸´ÔӵIJéѯ£¬°üº¬¶à¸ö±íÁ¬½Ó£¬Èç¹ûÄãֻΪij¸ö±íÖ¸¶¨ÁËINDEXÌáʾ(ָʾ´æÈ¡Â·¾¶ÔڸñíÉÏʹÓÃË÷Òý)£¬ÓÅ»¯Æ÷ÐèÒªÀ´¾ö¶¨ÆäËüÓ¦¸ÃʹÓõķÃÎÊ·¾¶ºÍÏàÓ¦µÄÁ¬½Ó·½·¨¡£Òò´Ë£¬¼´Ê¹Äã¸ø³öÁËÒ»¸öINDEXÌáʾ£¬ÓÅ»¯Æ÷¿ÉÄܾõµÃûÓбØÒªÊ¹ÓøÃÌáʾ¡£ÕâÊÇÓÉÓÚÎÒÃÇÈÃÓÅ»¯Æ÷Ñ¡ÔñÁËÆäËüÁ¬½Ó·½·¨ºÍ´æÈ¡Â·¾¶£¬¶ø»ùÓÚÕâЩÁ¬½Ó·½·¨ºÍ´æÈ¡Â·¾¶£¬ÓÅ»¯Æ÷ÈÏΪÓû§¸ø³öµÄINDEXÌáʾÎÞÓá£ÎªÁË·ÀÖ¹ÕâÖÖÇé¿ö£¬ÎÒÃÇҪʹÓÃÈ«Ì×µÄhints£¬È磺²»µ«Ö¸¶¨ÒªÊ¹ÓõÄË÷Òý£¬¶øÇÒÒ²Ö¸¶¨Á¬½ÓµÄ·½·¨ÓëÁ¬½ÓµÄ˳ÐòµÈ¡£
ÏÂÃæÊÇÒ»¸öʹÓÃÈ«Ì×hintsµÄÀý×Ó£¬ORDEREDÌáʾָ³öÁËÁ¬½ÓµÄ˳Ðò£¬¶øÇÒΪ²»Í¬µÄ±íÖ¸¶¨ÁËÁ¬½Ó·½·¨£º
SELECT /*+ ORDERED INDEX (b, jl_br_balances_n1) USE_NL (j b)
USE_NL (glcc glf) USE_MERGE (gp gsb) */
b.application_id, b.set_of_books_id ,
b.personnel_id, p.vendor_id Personnel,
p.segment1 PersonnelNumber, p.vendor_name Name
fr
Ïà¹ØÎĵµ£º
Ò»£®ÒýÑÔ
ORACLE
Êý¾Ý¿â×Ö·û¼¯£¬¼´Oracle
È«Çò»¯Ö§³Ö(Globalization Support)
£¬»ò¼´¹ú¼ÒÓïÑÔÖ§³Ö£¨NLS
£©Æä×÷ÓÃÊÇÓñ¾¹úÓïÑԺ͸ñʽÀ´´æ´¢¡¢´¦ÀíºÍ¼ìË÷Êý¾Ý¡£ÀûÓÃÈ«Çò»¯Ö§³Ö£¬ORACLE
ΪÓû§Ìṩ×Ô¼ºÊìϤµÄÊý¾Ý¿âĸÓï»·¾³£¬ÖîÈçÈÕÆÚ¸ñʽ¡¢Êý×Ö¸ñʽºÍ´æ´¢ÐòÁеȡ£Oracle
¿ÉÒÔÖ§³Ö¶àÖÖÓïÑÔ¼°×Ö·û¼ ......
OracleÈÕÆÚº¯Êý¼¯½õ(Ò»)
Ò»¡¢ ³£ÓÃÈÕÆÚÊý¾Ý¸ñʽ
1.Y»òYY»òYYY ÄêµÄ×îºóһ룬Á½Î»»òÈýλ
SQL> Select to_char(sysdate,'Y') from dual;
TO_CHAR(SYSDATE,'Y')
--------------------
7
SQL> Select to_char(sysdate,'YY') from dual;
TO_CHAR(SYSDATE,'YY')
---------------------
07
SQL> Select to_ch ......
ĿǰÖ÷Á÷Êý¾Ý¿â£º
΢Èí£ºsql serverºÍaccess
ÈðµäMySql£ºAB¹«Ë¾mysql
IBM¹«Ë¾£ºDB2¡¢
ÃÀ¹úSybase¹«Ë¾£ºSybase
IBM¹«Ë¾ ......
1.¼à¿ØÊÂÀýµÄµÈ´ý£º
select event,sum(decode(wait_time,0,0,1)) prev, sum(decode(wait_time,0,1,0)) curr,count(*)
from v$session_wait
group by event order by 4;
2.»Ø¹ö¶ÎµÄÕùÓÃÇé¿ö£º
select name,waits,gets,waits/gets ratio from v$rollstat a,v$rollnam ......
Ò».·ÖÎöº¯Êý2(rank\dense_rank\row_number)
Ŀ¼
===============================================
1.ʹÓÃrownumΪ¼Ç¼ÅÅÃû
2.ʹÓ÷ÖÎöº¯ÊýÀ´Îª¼Ç¼ÅÅÃû
3.ʹÓ÷ÖÎöº¯ÊýΪ¼Ç¼½øÐзÖ×éÅÅÃû
Ò»¡¢Ê¹ÓÃrownumΪ¼Ç¼ÅÅÃû£º
ÔÚÇ°ÃæÒ»Æª¡¶Oracle¿ª·¢×¨ÌâÖ®£º·ÖÎöº¯Êý¡·£¬ÎÒÃÇÈÏʶÁË·ÖÎöº¯ÊýµÄ»ù±¾Ó¦Óã¬ÏÖÔÚÎÒÃÇÔÙ ......