SQL Server Ë÷Òý»ù´¡ÖªÊ¶(2)
£¨http://www.builder.com.cn/2008/0211/733054.shtml£© »ù´¡ÖªÊ¶£¨4£©
²»ÂÛÊÇ ¾Û¼¯Ë÷Òý£¬»¹ÊǷǾۼ¯Ë÷Òý£¬¶¼ÊÇÓÃB+Ê÷À´ÊµÏֵġ£ÎÒÃÇÔÚÁ˽âÕâÁ½ÖÖË÷Òý֮ǰ£¬ÐèÒªÏÈÁ˽âB+ͨ¹ý×ܽᣬÎÒ·¢ÏÖ×Ô¼ºÒÔǰºÜ¶àºÜÄ£ºýµÄ¸ÅÄî¶¼ÇåÎúÁ˺ܶࡣ
²»ÂÛÊÇ ¾Û¼¯Ë÷Òý£¬»¹ÊǷǾۼ¯Ë÷Òý£¬¶¼ÊÇÓÃB+Ê÷À´ÊµÏֵġ£ÎÒÃÇÔÚÁ˽âÕâÁ½ÖÖË÷Òý֮ǰ£¬ÐèÒªÏÈÁ˽âB+Ê÷¡£Èç¹ûÄã¶ÔBÊ÷²»Á˽âµÄ»°£¬½¨Òé²Î¿´ÒÔϼ¸ÆªÎÄÕ£º
BTree,B-Tree,B+Tree,B*Tree¶¼ÊÇʲô
http://blog.csdn.net/manesking/archive/2007/02/09/1505979.aspx
B+ Ê÷µÄ½á¹¹Í¼:
B+ Ê÷µÄÌØµã:
ËùÓйؼü×Ö¶¼³öÏÖÔÚÒ¶×Ó½áµãµÄÁ´±íÖУ¨³íÃÜË÷Òý£©£¬ÇÒÁ´±íÖеĹؼü×ÖÇ¡ºÃÊÇÓÐÐòµÄ£»
²»¿ÉÄÜÔÚ·ÇÒ¶×Ó½áµãÃüÖУ»
·ÇÒ¶×Ó½áµãÏ൱ÓÚÊÇÒ¶×Ó½áµãµÄË÷Òý£¨Ï¡ÊèË÷Òý£©£¬Ò¶×Ó½áµãÏ൱ÓÚÊÇ´æ´¢£¨¹Ø¼ü×Ö£©Êý¾ÝµÄÊý¾Ý²ã£»
B+ Ê÷ÖÐÔö¼ÓÒ»¸öÊý¾Ý£¬»òÕßɾ³ýÒ»¸öÊý¾Ý£¬ÐèÒª·Ö¶àÖÖÇé¿ö´¦Àí£¬±È½Ï¸´ÔÓ£¬ÕâÀï¾Í²»ÏêÊöÕâ¸öÄÚÈÝÁË¡£
¾Û¼¯Ë÷Òý£¨Clustered Index£©
¾Û¼¯Ë÷ÒýµÄÒ¶½Úµã¾ÍÊÇʵ¼ÊµÄÊý¾ÝÒ³
ÔÚÊý¾ÝÒ³ÖÐÊý¾Ý°´ÕÕË÷Òý˳Ðò´æ´¢
ÐеÄÎïÀíλÖúÍÐÐÔÚË÷ÒýÖеÄλÖÃÊÇÏàͬµÄ
ÿ¸ö±íÖ»ÄÜÓÐÒ»¸ö¾Û¼¯Ë÷Òý
¾Û¼¯Ë÷ÒýµÄƽ¾ù´óС´óԼΪ±í´óСµÄ5%×óÓÒ
ÏÂÃæÊÇÁ½¸±¼òµ¥ÃèÊö¾Û¼¯Ë÷ÒýµÄʾÒâͼ£º
ÔÚ¾Û¼¯Ë÷ÒýÖÐÖ´ÐÐÏÂÃæÓï¾äµÄµÄ¹ý³Ì£º
select * from table where firstName = 'Ota'
Ò»¸ö±È½Ï³éÏóµãµÄ¾Û¼¯Ë÷Òýͼʾ£º
·Ç¾Û¼¯Ë÷Òý £¨Unclustered Index£©
·Ç¾Û¼¯Ë÷ÒýµÄÒ³£¬²»ÊÇÊý¾Ý£¬¶øÊÇÖ¸ÏòÊý¾ÝÒ³µÄÒ³¡£
Èôδָ¶¨Ë÷ÒýÀàÐÍ£¬ÔòĬÈÏΪ·Ç¾Û¼¯Ë÷Òý
Ò¶½ÚµãÒ³µÄ´ÎÐòºÍ±íµÄÎïÀí´æ´¢´ÎÐò²»Í¬
ÿ¸ö±í×î¶à¿ÉÒÔÓÐ249¸ö·Ç¾Û¼¯Ë÷Òý
ÔڷǾۼ¯Ë÷Òý´´½¨Ö®Ç°´´½¨¾Û¼¯Ë÷Òý£¨·ñÔò»áÒý·¢Ë÷ÒýÖØ½¨£©
ÔڷǾۼ¯Ë÷ÒýÖÐÖ´ÐÐÏÂÃæÓï¾äµÄµÄ¹ý³Ì£º
select * from employee where lname = 'Green'
Ò»¸ö±È½Ï³éÏóµãµÄ·Ç¾Û¼¯Ë÷Òýͼʾ£º
ʲôÊÇ Bookmark Lookup
ËäÈ»SQL 2005 ÖÐÒѾ²»ÔÚÌá Bookmark Lookup ÁË(»»ÌÀ²»»»Ò©)£¬µ«ÊÇÎÒÃǵĺܶàËÑË÷¶¼ÊÇÓõÄÕâÑùµÄËÑË÷¹ý³Ì£¬ÈçÏ£º
ÏÈÔڷǾۼ¯ÖÐÕÒ£¬È»ºóÔÙÔÚ¾Û¼¯Ë÷ÒýÖÐÕÒ¡£
ÔÚ http://www.sqlskills.com/ ÌṩµÄÒ»¸öÀý×ÓÖУ¬¾Í¸øÎÒÃÇÑÝʾÁË Bookmark Lookup ±È Table Scan ÂýµÄÇé¿ö£¬Àý×ӵĽű¾ÈçÏ£º
USE CREDITgo-- These samples use the Credit database. You can download and restore the-- credit database from here:-- http://www.s
Ïà¹ØÎĵµ£º
1.Ñ¡Ôñ×îÓÐЧÂʵıíÃû˳Ðò(Ö»ÔÚ»ùÓÚ¹æÔòµÄÓÅ»¯Æ÷ÖÐÓÐЧ)¡¡¡¡
¡¡¡¡ SQLSERVERµÄ½âÎöÆ÷°´ÕÕ´ÓÓÒµ½×óµÄ˳Ðò´¦Àífrom×Ó¾äÖеıíÃû£¬Òò´Ëfrom×Ó¾äÖÐдÔÚ×îºóµÄ±í£¨»ù´¡±ídriving table£©½«±»×îÏÈ´¦Àí£¬ÔÚfrom×Ó¾äÖаüº¬¶à¸ö±íµÄÇé¿öÏ£¬±ØÐëÑ¡Ôñ¼Ç¼ÌõÊý×îÉٵıí×÷Ϊ»ù´¡±í£¬µ±SQLSERVER´¦Àí¶à¸ö±íʱ£¬»áÔËÓÃÅÅÐò¼°ºÏ²¢µÄ·½Ê½Á ......
ÔÚsql server 2005À¸ù¾ÝÊý¾Ý¿âÐÔÄܶ¯Ì¬¹¹½¨Ë÷Òý¡£
Êý¾Ý¿âÉè¼ÆºÃºó£¬ÏµÍ³ÉÏÏßÔ˶¯Ò»¸öÖÜÆÚºó£¬Êý¾Ý¿âÐÔÄÜÆ¿¾±Í»ÏÖ³öÀ´£¬Õâ¸öʱ¼ä£¬ÐèÒªÒ»ÖÖ¸ù¾ÝÐÔÄÜ£¬À´¶¯Ì¬¹¹½¨Ë÷Òý£¬Ìá¸ß²éѯЧÂÊ¡£
--¹ý³ÌÓÅ»¯SQL
&nb ......
A left join B µÄÁ¬½ÓµÄ¼Ç¼ÊýÓëA±íµÄ¼Ç¼Êýͬ
A right join B µÄÁ¬½ÓµÄ¼Ç¼ÊýÓëB±íµÄ¼Ç¼Êýͬ
A left join B µÈ¼ÛB right join A
table A:Field_K, Field_A1 a3 b4 ctable B:Field_K, Field_B1 x2 &nbs ......
ÍøÕ¾Êý¾Ý¿âÖÖÂí
Êý¾Ý¿âÖкܶà±í´æÔÚ´óÁ¿Ïàͬ¼Ç¼
¾¸ßÈËÖ¸µãɾ³ýÏàͬ¼Ç¼(½ö±£ÁôÒ»¸ö)µÄSQLÓï¾äÈçÏÂ
declare @tmptb TABLE (
[ID] [int] NOT NULL ,
[SortName] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,
[SortNote] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,
[ParentI ......