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
Ïà¹ØÎĵµ£º
×ªÔØÒ»¸öBDBµÄÏà¹Ø½éÉÜ£¬»ù±¾¿ÉÒÔµ±ËÙ³ÉÊÖ²áÓ㬸ü¶àµÄÎĵµ¿ÉÒÔÈ¥Oracle¹Ù·½ÍøÕ¾ÏÂÔØ¡£
SQL ¿ª·¢ÈËÔ± Oracle Berkeley DB Ö¸ÄÏ
×÷ÕߣºMargo Seltzer
Oracle Berkeley DB Öг£Óà SQL º¯ÊýʹÓÃÖ¸ÄÏ¡£
2007 Äê 9 Ô·¢±í
³£³£ÓÐÈËÎÊ Oracle Berkeley DB “ÎÒÈçºÎÔÚ Berkeley DB ÖнøÐÐ <SQL ²éѯ>£¿"Òò´Ë£¬ÎÒÃÇ ......
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 ......
Oracle±íµÄ¹ÜÀí
±íÃûºÍÁÐÃûµÄÃüÃû¹æÔò£º
1±ØÐëÒÔ×Öĸ¿ªÍ·
2³¤¶È²»Äܳ¬¹ý30¸ö×Ö·û
3²»ÄÜʹÓÃOracleµÄ±£Áô×Ö
4Ö»ÄÜʹÓÃÈçÏÂ×Ö·û£ºA-Z,a-z,0-9,$,#µÈ
OracleÖ§³ÖµÄÊý¾ÝÀàÐÍ£º
1char ¶¨³¤£¬×î´ó2000×Ö·û
Àý×Ó£ºchar(10) ‘Ïþ»Ô’ ǰËĸö×Ö·û·Å’Ïþ»Ô’£¬ºóÌíÁù¸ö¿Õ¸ñ²¹È«
2varchar2(20) ±ä³¤£¬×î´ ......
±íµÄ²éÕÒ£º
select * from emp where (sal>500 or job='MANAGER') and ename like 'J%';
ÒýºÅÀï±ßµÄ×Ö·ûÊÇÇø·Ö´óСдµÄ¡£
²éÕÒÖ®ºó°Ñ½á¹ûÅÅÐò£º
select * from emp order by sal asc;
ascÊÇÉýÐò£¬descÊǽµÐò
¶ÔÁÐÖØÃüÃû£¬Ö»Òª´ò¸ö¿Õ¸ñ£¬ºó¸úÐÂÁÐÃû¾Í¿ÉÒÔ
select ename,sal*12+nvl(comm,0)*12 "Äêн" from ......
ÈçºÎ±¸·ÝOracleÊý¾Ý¿â£º
MD F:\DB_BAK\%date:~0,10%
EXP userid=bszlhr/bszlhr@ORCL_14 file=F:\DB_BAK\%date:~0,10%\bszlhr%date:~0,10%.dmp log=f:\DB_BAK\%date:~0,10%\log_bszlhr_%date:~0,10%.log
buffer=64000 owner=bszlhr
-----´´½¨ÐÅÓÃÐÅÏ¢µÄ±í----------
create table GCCredit(
itemID numb ......