³£¼ûOracle HINTµÄÓ÷¨
¡¡1. /*+ALL_ROWS*/
¡¡¡¡±íÃ÷¶ÔÓï¾ä¿éÑ¡Ôñ»ùÓÚ¿ªÏúµÄÓÅ»¯·½·¨,²¢»ñµÃ×î¼ÑÍÌÍÂÁ¿,ʹ×ÊÔ´ÏûºÄ×îС»¯.
¡¡¡¡ÀýÈç:
¡¡¡¡SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN from BSEMPMS WHERE EMP_NO='SCOTT';
¡¡¡¡2. /*+FIRST_ROWS*/
¡¡¡¡±íÃ÷¶ÔÓï¾ä¿éÑ¡Ôñ»ùÓÚ¿ªÏúµÄÓÅ»¯·½·¨,²¢»ñµÃ×î¼ÑÏìӦʱ¼ä,ʹ×ÊÔ´ÏûºÄ×îС»¯.
¡¡¡¡ÀýÈç:
¡¡¡¡SELECT /*+FIRST_ROWS*/ EMP_NO,EMP_NAM,DAT_IN from BSEMPMS WHERE EMP_NO='SCOTT';
¡¡¡¡3. /*+CHOOSE*/
¡¡¡¡±íÃ÷Èç¹ûÊý¾Ý×ÖµäÖÐÓзÃÎʱíµÄͳ¼ÆÐÅÏ¢,½«»ùÓÚ¿ªÏúµÄÓÅ»¯·½·¨,²¢»ñµÃ×î¼ÑµÄÍÌÍÂÁ¿;
¡¡¡¡±íÃ÷Èç¹ûÊý¾Ý×ÖµäÖÐûÓзÃÎʱíµÄͳ¼ÆÐÅÏ¢,½«»ùÓÚ¹æÔò¿ªÏúµÄÓÅ»¯·½·¨;
¡¡¡¡ÀýÈç:
¡¡¡¡SELECT /*+CHOOSE*/ EMP_NO,EMP_NAM,DAT_IN from BSEMPMS WHERE EMP_NO='SCOTT';
¡¡¡¡4. /*+RULE*/
¡¡¡¡±íÃ÷¶ÔÓï¾ä¿éÑ¡Ôñ»ùÓÚ¹æÔòµÄÓÅ»¯·½·¨.
¡¡¡¡ÀýÈç:
¡¡¡¡SELECT /*+ RULE */ EMP_NO,EMP_NAM,DAT_IN from BSEMPMS WHERE EMP_NO='SCOTT';
¡¡¡¡5. /*+FULL(TABLE)*/
¡¡¡¡±íÃ÷¶Ô±íÑ¡ÔñÈ«¾ÖɨÃèµÄ·½·¨.
¡¡¡¡ÀýÈç:
¡¡¡¡SELECT /*+FULL(A)*/ EMP_NO,EMP_NAM from BSEMPMS A WHERE EMP_NO='SCOTT';
¡¡¡¡6. /*+ROWID(TABLE)*/
¡¡¡¡ÌáʾÃ÷È·±íÃ÷¶ÔÖ¸¶¨±í¸ù¾ÝROWID½øÐзÃÎÊ.
¡¡¡¡ÀýÈç:
¡¡¡¡SELECT /*+ROWID(BSEMPMS)*/ * from BSEMPMS WHERE ROWID>='AAAAAAAAAAAAAA'
¡¡¡¡AND EMP_NO='SCOTT';
¡¡¡¡7. /*+CLUSTER(TABLE)*/
¡¡¡¡ÌáʾÃ÷È·±íÃ÷¶ÔÖ¸¶¨±íÑ¡Ôñ´ØÉ¨ÃèµÄ·ÃÎÊ·½·¨,ËüÖ»¶Ô´Ø¶ÔÏóÓÐЧ.
¡¡¡¡ÀýÈç:
¡¡¡¡SELECT /*+CLUSTER */ BSEMPMS.EMP_NO,DPT_NO from BSEMPMS,BSDPTMS
¡¡¡¡WHERE DPT_NO='TEC304' AND BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;
¡¡¡¡8. /*+INDEX(TABLE INDEX_NAME)*/
¡¡¡¡±íÃ÷¶Ô±íÑ¡ÔñË÷ÒýµÄɨÃè·½·¨.
¡¡¡¡ÀýÈç:
¡¡¡¡SELECT /*+INDEX(BSEMPMS SEX_INDEX) USE SEX_INDEX BECAUSE THERE ARE FEWMALE BSEMPMS */ from BSEMPMS WHERE SEX='M';
¡¡¡¡9. /*+INDEX_ASC(TABLE INDEX_NAME)*/
¡¡¡¡±íÃ÷¶Ô±íÑ¡ÔñË÷ÒýÉýÐòµÄɨÃè·½·¨.
¡¡¡¡ÀýÈç:
¡¡¡¡SELECT /*+INDEX_ASC(BSEMPMS PK_BSEMPMS) */ from BSEMPMS WHERE DPT_NO='SCOTT';
¡¡¡¡10. /*+INDEX_COMBINE*/
¡¡¡¡ÎªÖ¸¶¨±íÑ¡Ôñλͼ·ÃÎÊ·¾,Èç¹ûINDEX_COMBINEÖÐûÓÐÌṩ×÷Ϊ²ÎÊýµÄË÷Òý,½«Ñ¡Ôñ³öλͼË÷ÒýµÄ²¼¶û×éºÏ·½Ê½.
¡¡¡¡ÀýÈç:
¡¡¡¡SELECT /*+INDEX_COMBINE(BSEMPMS SAL_BMI HIREDATE_BMI)*/ * from BSEMPMS
¡¡¡¡WHERE SAL<5000000 AND HIREDATE
Ïà¹ØÎĵµ£º
1. ÿÌìµÄ8£º00µ½23£º00ÿ¸ô5·ÖÖÓÖ´ÐÐÒ»¸ösqlÓï¾äµÄJOB
--½¨Á¢Ò»¸ö´æ´¢¹ý³Ì
CREATE OR REPLACE PROCEDURE p_jobtest IS
v_hh VARCHAR2(2);
BEGIN
v_hh := to_char(SYSDATE, 'hh24');
IF v_hh >= '08' AND v_hh <= '22' THEN
--ÄãµÄsqlÓï¾ä ......
EMP±íÖÐÔ±¹¤ÓëÀϰåµÄ¹ØÏµ
ÄÚÁ¬½Ó£º
ÄÚÁ¬½ÓÒ²½Ð×ÔÈ»Á¬½Ó£¬ËüÊÇ×éºÏÁ½¸ö±íµÄ³£Ó÷½·¨¡£×ÔÈ»Á¬½Ó½«Á½¸ö±íÖеÄÁнøÐбȽϣ¬½«Á½¸ö±íÖÐÂú×ãÁ¬½ÓÌõ¼þµÄÐÐ×éºÏÆðÀ´£¬×÷Ϊ½á¹û¡£×ÔÈ»Á¬½ÓÓÐÁ½ÖÖÐÎʽµÄÓï·¨¡£
select e1.ename,e1.mgr,e2.ename aa from emp e1,emp e2 where e1. ......
×÷Óãºmerge into ½â¾öÓÃB±í¸úÐÂA±íÊý¾Ý£¬Èç¹ûA±íÖÐûÓУ¬Ôò°ÑB±íµÄÊý¾Ý²åÈëA±í£»
Óï·¨£º
MERGE INTO [your table-name] [rename your table here]
USING ( [write your query here] )[rename your query-sql and using just like a table]
ON ([conditional expression here] AND [...]...)
WHEN MATHED THEN [here ......
Ò»¡¢¼àÌýÆ÷(LISTENER)
¡¡¡¡¼àÌýÆ÷ÊÇOracle»ùÓÚ·þÎñÆ÷¶ËµÄÒ»ÖÖÍøÂç·þÎñ£¬Ö÷ÒªÓÃÓÚ¼àÌý¿Í»§¶ËÏòÊý¾Ý¿â·þÎñÆ÷¶ËÌá³öµÄÁ¬½ÓÇëÇó¡£¼ÈÈ»ÊÇ»ùÓÚ·þÎñÆ÷¶ËµÄ·þÎñ£¬ÄÇôËüÒ²Ö»´æÔÚÓÚÊý¾Ý¿â·þÎñÆ÷¶Ë£¬½øÐмàÌýÆ÷µÄÉèÖÃÒ²ÊÇÔÚÊý¾Ý¿â·þÎñÆ÷¶ËÍê³ÉµÄ¡£
¶þ¡¢±¾µØ·þÎñÃû(Tnsname)
¡¡¡¡Oracle¿Í»§¶ËÓë·þÎñÆ÷¶ËµÄÁ¬½ÓÊÇͨ¹ý¿Í»§¶Ë· ......
--´´½¨Óû§
create user iagent identified by ia
--profile default
default tablespace users
temporary tablespace temp;
--account unlock;
--ɾ³ýÓû§
drop user iagent cascade;
--ÐÞ¸ÄÓû§ÃÜÂë
alter user iagent identified by ia;
--¸ø´´½¨µ ......