ÓÃË÷ÒýÌá¸ßSQL ServerÐÔÄÜ
ÔÚ΢ÈíµÄSQL ServerϵͳÖÐͨ¹ýÓÐЧµÄʹÓÃË÷Òý¿ÉÒÔÌá¸ßÊý¾Ý¿âµÄ²éѯÐÔÄÜ£¬µ«ÊÇÐÔÄܵÄÌá¸ßÈ¡¾öÓÚÊý¾Ý¿âµÄʵÏÖ¡£ÔÚ±¾ÎÄÖн«»á¸æËßÄãÈçºÎʵÏÖË÷Òý²¢ÓÐЧµÄÌá¸ßÊý¾Ý¿âµÄÐÔÄÜ¡£¡¡
¡¡¡¡
¡¡¡¡ÔÚ¹ØϵÐÍÊý¾Ý¿âÖÐʹÓÃË÷ÒýÄܹ»Ìá¸ßÊý¾Ý¿âÐÔÄÜ£¬ÕâÒ»µãÊǷdz£Ã÷ÏԵġ£ÓõÄË÷ÒýÔ½¶à£¬´ÓÊý¾Ý¿âϵͳÖеõ½Êý¾ÝµÄËٶȾÍÔ½¿ì¡£È»¶ø£¬ÐèҪעÒâµÄÊÇ£¬ÓõÄË÷ÒýÔ½¶à£¬ÏòÊý¾Ý¿âϵͳÖвåÈëÐÂÊý¾ÝËù»¨·ÑµÄʱ¼ä¾ÍÔ½¶à¡£ÔÚ±¾ÎÄÖУ¬Ä㽫Á˽⵽΢ÈíµÄSQL ServerÊý¾Ý¿âËùÖ§³ÖµÄ¸÷ÖÖ²»Í¬ÀàÐ͵ÄË÷Òý£¬ÔÚÕâÀïÄ㽫Á˽⵽ÈçºÎʹÓò»Í¬µÄ·½·¨À´ÊµÏÖË÷Òý£¬Í¨¹ýÕâЩ²»Í¬µÄʵÏÖ·½·¨£¬ÄãÔÚÊý¾Ý¿âµÄ¶ÁÐÔÄÜ·½ÃæµÃµ½µÄÔ¶±ÈÔÚÊý¾Ý¿âµÄÕûÌåÐÔÄÜ·½ÃæµÄËðʧҪ¶àµÃ¶à¡£
¡¡¡¡
¡¡¡¡Ë÷ÒýµÄ¶¨Òå
¡¡¡¡Ë÷ÒýÊÇÊý¾Ý¿âµÄ¹¤¾ß£¬Í¨¹ýʹÓÃË÷Òý£¬ÔÚÊý¾Ý¿âÖлñÈ¡Êý¾ÝµÄʱºò£¬¾Í¿ÉÒÔ²»ÓÃɨÃèÊý¾Ý¿âÖеÄËùÓÐÊý¾Ý¼Ç¼£¬ÕâÑùÄܹ»Ìá¸ßϵͳ»ñÈ¡Êý¾ÝµÄÐÔÄÜ¡£Ê¹ÓÃË÷Òý¿ÉÒԸıäÊý¾ÝµÄ×éÖ¯·½Ê½£¬Ê¹µÃËùÓеÄÊý¾Ý¶¼ÊÇ°´ÕÕÏàËƵĽṹÀ´×éÖ¯µÄ£¬ÕâÑù¾Í¿ÉÒÔºÜÈÝÒ×µØʵÏÖÊý¾ÝµÄ¼ìË÷·ÃÎÊ¡£Ë÷ÒýÊÇ°´ÕÕÁÐÀ´´´½¨µÄ£¬ÕâÑù¾Í¿ÉÒÔ¸ù¾ÝË÷ÒýÁÐÖеÄÖµÀ´°ïÖúÊý¾Ý¿âÕÒµ½ÏàÓ¦µÄÊý¾Ý¡£
¡¡¡¡
¡¡¡¡Ë÷ÒýµÄÀàÐÍ
¡¡¡¡Î¢ÈíµÄSQL Server Ö§³ÖÁ½ÖÖÀàÐ͵ÄË÷Òý£ºclustered Ë÷ÒýºÍnonclusteredË÷Òý¡£Clustered Ë÷ÒýÔÚÊý¾Ý±íÖа´ÕÕÎïÀí˳Ðò´æ´¢Êý¾Ý¡£ÒòΪÔÚ±íÖÐÖ»ÓÐÒ»¸öÎïÀí˳Ðò£¬ËùÒÔÔÚÿ¸ö±íÖÐÖ»ÄÜÓÐÒ»¸öclusteredË÷Òý¡£ÔÚ²éÕÒij¸ö·¶Î§ÄÚµÄÊý¾Ýʱ£¬ClusteredË÷ÒýÊÇÒ»Öַdz£ÓÐЧµÄË÷Òý£¬ÒòΪÕâЩÊý¾ÝÔÚ´æ´¢µÄʱºòÒѾ°´ÕÕÎïÀí˳ÐòÅźÃÐòÁË¡£
¡¡¡¡
¡¡¡¡NonclusteredË÷Òý²»»áÓ°Ïìµ½ÏÂÃæµÄÎïÀí´æ´¢£¬µ«ÊÇËüÊÇÓÉÊý¾ÝÐÐÖ¸Õë¹¹³ÉµÄ¡£Èç¹ûÒѾ´æÔÚÒ»¸öclusteredË÷Òý£¬ÔÚnonclusteredÖеÄË÷ÒýÖ¸Õ뽫°üº¬clusteredË÷ÒýµÄλÖòο¼¡£ÕâЩË÷Òý±ÈÊý¾Ý¸ü½ô´Ù£¬¶øÇÒ¶ÔÕâЩË÷ÒýµÄɨÃèËٶȱȶÔʵ¼ÊµÄÊý¾Ý±íɨÃèÒª¿ìµÃ¶à¡£
¡¡¡¡
¡¡¡¡ÈçºÎʵÏÖË÷Òý
¡¡¡¡Êý¾Ý¿â¿ÉÒÔ×Ô¶¯´´½¨Ä³Ð©Ë÷Òý¡£ÀýÈ磬΢ÈíµÄSQL Serverϵͳͨ¹ý×Ô¶¯´´½¨Î¨Ò»Ë÷ÒýÀ´Ç¿ÖÆʵÏÖUNIQUEÔ¼Êø£¬ÕâÑù¿ÉÒÔÈ·±£ÔÚÊý¾Ý¿âÖв»»á²åÈëÖظ´Êý¾Ý¡£Ò²¿ÉÒÔʹÓÃCREATE INDEXÓï¾ä»òÕßͨ¹ýSQL Server Enterprise ManagerÀ´´´½¨ÆäËûË÷Òý£¬SQL Server Enterprise Manager»¹ÓÐÒ»¸öË÷Òý´´½¨Ä£°åÀ´Ö¸µ¼ÄãÈçºÎ´´½¨Ë÷Òý¡£
¡¡¡¡
¡¡¡¡µÃµ½¸üºÃµÄÐÔÄÜ
¡¡¡¡ËäÈ»Ë÷Òý¿ÉÒÔ´øÀ´ÐÔÄÜÉϵÄÓÅÊÆ£¬µ«ÊÇͬʱҲ½«´øÀ´Ò»¶¨µÄ´ú¼Û¡£ËäÈ»SQL ServerϵͳÔÊÐíÄãÔÚÿ¸öÊý¾Ý±íÖд´½¨¶à´ï256¸önonclusteredË÷Òý£¬µ«Êǽ¨Ò鲻ҪʹÓÃÕâô¶àµÄË÷Òý
Ïà¹ØÎĵµ£º
ÔÚSQLÓï¾äÓÅ»¯¹ý³ÌÖУ¬ÎÒÃǾ³£»áÓõ½hint,ÏÖ×ܽáÒ»ÏÂÔÚSQLÓÅ»¯¹ý³ÌÖг£¼ûOracle HINTµÄÓ÷¨£º
1. /*+ALL_ROWS*/
±íÃ÷¶ÔÓï¾ä¿éÑ¡Ôñ»ùÓÚ¿ªÏúµÄÓÅ»¯·½·¨,²¢»ñµÃ×î¼ÑÍÌÍÂÁ¿,ʹ×ÊÔ´ÏûºÄ×îС»¯.
ÀýÈç:
SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN from BSEMPMS WHERE EMP_NO='SCOTT';
2. /*+FIRST_ROWS*/
±í ......
ÔÚÎÒÃǵÄÈÕ³£±à³ÌÖУ¬Êý¾Ý¿âµÄ³ÌÐò»ù±¾É϶¼ÒªÓëSQLÓï¾ä´ò½»µÀ£¬SQLÓï¾äµÄ±àд²»¿É±ÜÃâµÄ³ÉΪһ¸öÍ·Ì۵Ť×÷¡£ÇÒÒòΪSQLÓï¾äÊÇSTRINGÀàÐÍ£¬Òò´ËÔÚ±àÒë½×¶Î²é²»³ö´í£¬Ö»Óе½ÔËÐÐʱ²ÅÄÜ·¢ÏÖ´íÎó¡£
±¾ÎĵĽâ¾ö·½°¸£¬Í¨¹ý×Ô¶¯Éú³ÉSQLÓï¾ä£¬ÔÚÒ»¶¨³Ì¶ÈÉϽµµÍ³ö´íµÄ¸ÅÂÊ£¬´Ó¶øÌá¸ß±à³ÌЧÂÊ¡£ public int ......
--> Title : SQL ServerÖ®·Ö²¼Ê½ÊÂÎñ
--> Author : wufeng4552
--> Date : 2009-11-11
SQL ServerÖ®·Ö²¼Ê½ÊÂÎñ
(Ò»)¸ÅÄî:
·Ö²¼Ê½ÊÂÎñÊÇÉæ¼°À´×ÔÁ½¸ö»ò¶à¸öÔ´µÄ×ÊÔ´µÄÊÂÎñ¡£Microsoft® SQL Server™ 2000Ö§³Ö·Ö²¼Ê½ÊÂÎñ£¬Ê¹Óû§µÃÒÔ´´½¨ÊÂÎñÀ´¸üжà¸öSQL ServerÊý¾Ý¿âºÍÆäËüÊý¾ÝÔ ......
1. ˵Ã÷£º¸´ÖƱí(Ö»¸´Öƽṹ£¬Ô´±íÃû£ºa£¬Ð±íÃû£ºb)
SQL: select * into b from a where 1<>1;
2. ˵Ã÷£º¿½±´±í(¿½±´Êý¾Ý£¬Ô´±íÃû£ºa£¬Ä¿±ê±íÃû£ºb)
SQL: insert into b(a, b, c) select d, e, f from b;
3. ˵Ã÷£º ......