³£ÓÃSQLÓï¾äÊéд¼¼ÇÉ
ת×Ô£ºhttp://jianghaifeng.blogchina.com/3841741.html
SQL½á¹¹»¯²éѯ×Ö·û´®µÄ¸Äд£¬ÊÇʵÏÖÊý¾Ý¿â²éѯÐÔÄÜÌáÉýµÄ×îÏÖʵ¡¢×îÓÐЧµÄÊֶΣ¬ÓÐʱÉõÖÁÊÇΨһµÄÊֶΣ¬±ÈÈçÔÚ²»ÔÊÐí´ó·ù¶ÈÐÞ¸ÄÏÖÓÐÊý¾Ý¿â½á¹¹µÄÇé¿öÏ¡£
ͨ¹ýÓÅ»¯SQLÓï¾äÌá¸ß²éѯÐÔÄܵĹؼüÊÇ£º
¸ù¾Ýʵ¼ÊÐèÇóÇé¿ö£¬½¨Á¢ºÏÊʵÄË÷Òý£»
ʹÓÃÒ»ÇпÉÄܵķ½Ê½È¥ÀûÓúÃË÷Òý£¬±ÜÃâÈ«±íɨÃ裻
¾¡Á¿¼õÉÙÄÚ´æ¼°Êý¾ÝI/O·½ÃæµÄ¿ªÏú
Ò»¡¢ ½¨Á¢Ë÷Òý
£¨Ò»£©½¨Á¢“Êʵ±”µÄË÷Òý£¬ÊÇ¿ìËÙ²éѯµÄ»ù´¡¡£
Ë÷Òý£¨index£©Êdzý±íÖ®ÍâÁíÒ»ÖØÒªµÄ¡¢Óû§¶¨ÒåµÄ´æ´¢ÔÚÎïÀí½éÖÊÉϵÄÊý¾Ý½á¹¹¡£µ±¸ù¾ÝË÷ÒýÂëµÄÖµËÑË÷Êý¾Ýʱ£¬Ë÷ÒýÌṩÁ˶ÔÊý¾ÝµÄ¿ìËÙ·ÃÎÊ¡£ÊÂʵÉÏ£¬Ã»ÓÐË÷Òý£¬Êý¾Ý¿âÒ²Äܸù¾ÝSELECTÓï¾ä³É¹¦µØ¼ìË÷µ½½á¹û£¬µ«Ëæ×űí±äµÃÔ½À´Ô½´ó£¬Ê¹ÓÓÊʵ±”µÄË÷ÒýµÄЧ¹û¾ÍÔ½À´Ô½Ã÷ÏÔ¡£×¢Ò⣬ÔÚÕâ¾ä»°ÖУ¬ÎÒÃÇÓÃÁË“Êʵ±”Õâ¸ö´Ê£¬ÕâÊÇÒòΪ£¬Èç¹ûʹÓÃË÷Òýʱ²»ÈÏÕæ¿¼ÂÇÆäʵÏÖ¹ý³Ì£¬Ë÷Òý¼È¿ÉÒÔÌá¸ßÒ²»áÆÆ»µÊý¾Ý¿âµÄ¹¤×÷ÐÔÄÜ¡£
Ë÷Òýʵ¼ÊÉÏÊÇÒ»ÖÖÌØÊâµÄĿ¼£¬SQL SERVERÌṩÁËÁ½ÖÖË÷Òý£º
¾Û¼¯Ë÷Òý£¨clustered index£¬Ò²³Æ¾ÛÀàË÷Òý¡¢´Ø¼¯Ë÷Òý£©
ÎÒÃǰÑÕâÖÖÕýÎÄÄÚÈݱ¾Éí¾ÍÊÇÒ»ÖÖ°´ÕÕÒ»¶¨¹æÔòÅÅÁеÄĿ¼³ÆÎª“¾Û¼¯Ë÷Òý”¡£
ÀýÈ磺
ººÓï×ÖµäÖа´Æ´Òô²éijһ¸ö×Ö£¬¾ÍÊÇʹÓÓ¾Û¼¯Ë÷Òý”£¬Êµ¼ÊÉÏ£¬Äã¸ù±¾Óò»×ŲéĿ¼£¬Ö±½ÓÔÚ×ÖµäÕýÎÄÀïÕÒ£¬¾ÍÄܺܿìÕÒµ½ÐèÒªµÄºº×Ö£¨¼ÙÉèÄãÖªµÀ·¢Òô£©¡£
·Ç¾Û¼¯Ë÷Òý£¨nonclustered index£¬Ò²³Æ·Ç¾ÛÀàË÷Òý¡¢·Ç´Ø¼¯Ë÷Òý£©
ÎÒÃǰÑĿ¼´¿´âÊÇĿ¼£¬ÕýÎÄ´¿´âÊÇÕýÎĵÄÅÅÐò·½Ê½³ÆÎª“·Ç¾Û¼¯Ë÷Òý”¡£
ÀýÈ磺
ººÓï×ÖµäÖа´²¿Êײéijһ¸ö×Ö£¬²¿Ê×Ŀ¼ºÍÕýÎÄÒ»¶¨Òª¿ÌÒâµÄͨ¹ýÒ³Âë²ÅÄÜÁªÏµµ½Ò»Æð£¬Æä˳Ðò²»ÊÇÌìȻһÖµġ£
¾Û¼¯Ë÷ÒýÓë·Ç¾Û¼¯Ë÷ÒýµÄ×î´óÇø±ð¾ÍÔÚÓÚ£º¾Û¼¯Ë÷ÒýÊǶÔÔÊý¾Ý±í½øÐÐÅÅÐò£¬Òò´ËÖ»Òª·ûºÏË÷ÒýÌõ¼þ£¬¾ÍÄܹ»Ö±½ÓÁ¬ÐøµÄ¶ÁÈ¡Êý¾Ý¼Ç¼£¬¼¸ºõ¿ÉÒÔ´ïµ½¶ÔÊý¾Ý±íµÄÁãɨÃ裻¶ø·Ç¾Û¼¯Ë÷Òý½ö½öÖ»ÊÇÁíÍ⽨ÁËÒ»ÕÅË÷Òý±í£¬È¡Êý¾ÝµÄʱºò£¬´ÓË÷Òý±íÈ¡µÃ½á¹ûºó£¬»¹ÐèÒªµ½Ö¸ÕëËùÖ¸µÄÊý¾ÝÐжÁÈ¡ÏàÓ¦Êý¾Ý£¬Òò´Ë£¬ÔÚÐÔÄÜÉÏ£¬¾Û¼¯Ë÷Òý»á´ó´óÓÅÓڷǾۼ¯Ë÷Òý¡£
¡¡¡¡µ«ÊÇÔÚÒ»ÕűíÖУ¬¾Û¼¯Ë÷ÒýÖ»ÔÊÐíÒ»¸ö£¬ÊDZȽϱ¦¹óµÄ£¬Òò´ËÒª¾¡¿ÉÄܵÄÓÃÓÚÄÇЩʹÓÃÆµÂÊ×î¸ßµÄË÷ÒýÉÏ¡£ ÁíÍ⣬²éѯʱ±ØÐèÒªÓõ½Ë÷ÒýµÄÆðʼÁУ¬·ñÔòË÷ÒýÎÞЧ¡£ÁíÍ⣬ÆðʼÁÐÒ²±ØÐèÊÇʹÓÃÆµ·±µÄÁУ¬ÄÇÑùµÄË÷ÒýÐÔÄܲŻá´ïµ
Ïà¹ØÎĵµ£º
¹«Ë¾Óиö±¨±íϵͳÏìÓ¦ËٶȲ»ÊǺÜÀíÏ룬µ÷Óŵ÷Á˺ü¸´Î£¬ÓеãЧ¹û£¬µ«²»ÊǺÜÈÃÈËÂúÒâ¡£×î½üÓÖ¿ªÊ¼µ÷ÓÅ£¬ÊÔÁËÊÔsql server 2008µÄ·ÖÇø±í¹¦ÄÜ£¬¿´¿´ÊDz»ÊÇ·ÖÇøÖ®ºóËÙ¶È¿ÉÒÔ¿ìÒ»µã¡£
ÓÃÁËÒ»¸ö°ÙÍò¼¶Êý¾ÝµÄ»ã×ܱíÀ´×ö·ÖÇø£¬·ÖÇøµÄÏë·¨Êǰ´ÔÂÀ´·ÖÇø£¬Ò»¸ö·ÖÇø´æ´¢Ò»¸öÔµÄÊý¾Ý£¬Ò»¸ö·ÖÇøµ ......
Ò»¸ösqlÓï¾ä£ºÒ»¸ö±ítestÓÐËĸö×Ö¶Îid,a,b,c,Èç¹û±íÖеļǼÓÐÈý¸ö×Ö¶Îa,b,c¶¼ÏàµÈ£¬Ôò˵Ã÷ÕâÌõ¼Ç¼ÊÇÏàͬµÄ£¬ÇóÏàͬµÄ¼Ç¼µÄ¸öÊý ¡£
select a,b,c,count(*) from (select c.a,c.b,c.c from test c) having count(*) >= 2 group by a,b,c
»òÕß
select zdbh,tdzl,zdmj,count(*) from ecaadmin.zdsx group by zdbh ......
ת×Ôhttp://lavasoft.blog.51cto.com/62575/23373
SQLÓïÑÔµÄCASEÓï¾ä±¸Íü
¸ÅÊö£º
SQLÓï¾äÖеÄCASEÓï¾äÓë¸ß¼¶ÓïÑÔÖеÄswitchÓï¾ä£¬ÊDZê×¼SQLµÄÓï·¨£¬ÊÊÓÃÓëÒ»¸öÌõ¼þÅжÏÓжàÖÖÖµµÄÇé¿öÏ·ֱðÖ´Ðв»Í¬µÄ²Ù×÷¡£Áé»îÓ¦ÓÃCASEÓï¾ä¿ÉÒÔʹSQLÓï¾ä±äµÃ¼ò½àÒ×¶Á£¬ÏÂÃæÔÚDB2»·¾³ÏÂͨ¹ýÒ»¸ö¼òµ¥µÄ²éѯÀ´Õ¹Ê¾SQL CASEÓ ......
Ò». ²éÕÒÖØ¸´¼Ç¼
1. ²éÕÒÈ«²¿Öظ´¼Ç¼
Select * from ±í Where ÖØ¸´×Ö¶Î In (Select ÖØ¸´×Ö¶Î
from ±í Group By ÖØ¸´×Ö¶Î Having Count(*)>1)
2. ¹ýÂËÖØ¸´¼Ç¼(Ö»ÏÔʾһÌõ)
Select * from HZT Where ID In (Select Max(ID) from HZT Group By Title)
×¢£º´Ë´¦ÏÔʾID×î´óÒ»Ìõ¼Ç¼
¶þ. ɾ³ýÖØ¸´¼Ç ......