Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

SQLServer ÓÅ»¯SQLÓï¾ä£ºin ºÍnot inµÄÌæ´ú·½°¸


Ô­Îijö´¦£ºhttp://www.cnblogs.com/luoht/archive/2010/03/01/1676049.html
ÓÃINд³öÀ´µÄSQLµÄÓŵãÊDZȽÏÈÝÒ×д¼°ÇåÎúÒ׶®£¬Õâ±È½ÏÊʺÏÏÖ´úÈí¼þ¿ª·¢µÄ·ç¸ñ¡£
¡¡¡¡µ«ÊÇÓÃINµÄSQLÐÔÄÜ×ÜÊDZȽϵ͵ģ¬´ÓSQLÖ´ÐеIJ½ÖèÀ´·ÖÎöÓÃINµÄSQLÓë²»ÓÃINµÄSQLÓÐÒÔÏÂÇø±ð£º
¡¡¡¡SQLÊÔͼ½«Æäת»»³É¶à¸ö±íµÄÁ¬½Ó£¬Èç¹ûת»»²»³É¹¦ÔòÏÈÖ´ÐÐINÀïÃæµÄ×Ó²éѯ£¬ÔÙ²éѯÍâ²ãµÄ±í¼Ç¼£¬Èç¹ûת»»³É¹¦ÔòÖ±½Ó²ÉÓöà¸ö±íµÄÁ¬½Ó·½Ê½²éѯ¡£Óɴ˿ɼûÓÃINµÄSQLÖÁÉÙ¶àÁËÒ»¸öת»»µÄ¹ý³Ì¡£Ò»°ãµÄSQL¶¼¿ÉÒÔת»»³É¹¦£¬µ«¶ÔÓÚº¬ÓзÖ×éͳ¼ÆµÈ·½ÃæµÄSQL¾Í²»ÄÜת»»ÁË¡£ ÍƼöÔÚÒµÎñÃܼ¯µÄSQLµ±Öо¡Á¿²»²ÉÓÃIN²Ù×÷·û
¡¡¡¡NOT IN ´Ë²Ù×÷ÊÇÇ¿ÁÐÍƼö²»Ê¹Óõģ¬ÒòΪËü²»ÄÜÓ¦ÓñíµÄË÷Òý¡£ÍƼöÓÃNOT EXISTS »ò(ÍâÁ¬½Ó+ÅжÏΪ¿Õ)·½°¸´úÌæ
¡¡¡¡ÔÚÊý¾Ý¿âÖÐÓÐÁ½¸ö±í£¬Ò»¸öÊǵ±Ç°±íInfo(id,PName,remark,impdate,upstate)£¬Ò»¸öÊDZ¸·ÝÊý¾Ý±íbakInfo(id,PName,remark,impdate,upstate)£¬½«µ±Ç°±íÊý¾Ý±¸·Ýµ½±¸·Ý±íÈ¥£¬¾ÍÉæ¼°µ½not in ºÍin ²Ù×÷ÁË£º
¡¡¡¡Ê×ÏÈ£¬Ìí¼Ó10ÍòÌõ²âÊÔÊý¾Ý
¡¡¡¡Ê¹ÓÃnot in ºÍin²Ù×÷£º
 
        SET STATISTICS TIME ON 
¡¡¡¡GO 
¡¡¡¡--±¸·ÝÊý¾Ý 
¡¡¡¡insert into bakInfo(id,PName,remark,impdate,upstate) 
¡¡¡¡select id,PName,remark,impdate,upstate from dbo.Info 
¡¡¡¡where id not in(select id from dbo.bakInfo) 
¡¡¡¡GO 
¡¡¡¡SET STATISTICS TIME OFF
 
¡¡¡¡´Ë²Ù×÷Ö´ÐÐʱ¼ä£º
¡¡¡¡SQL Server ·ÖÎöºÍ±àÒëʱ¼ä:
¡¡¡¡CPU ʱ¼ä = 0 ºÁÃ룬ռÓÃʱ¼ä = 3 ºÁÃë¡£
¡¡¡¡
¡¡¡¡SQL Server Ö´ÐÐʱ¼ä:
¡¡¡¡ CPU ʱ¼ä = 453 ºÁÃ룬ռÓÃʱ¼ä = 43045 ºÁÃë¡£
¡¡¡¡(100000 ÐÐÊÜÓ°Ïì)
¡¡¡¡SQL Server ·ÖÎöºÍ±àÒëʱ¼ä:
¡¡¡¡CPU ʱ¼ä = 0 ºÁÃ룬ռÓÃʱ¼ä = 1 ºÁÃë¡£
¡¡¡¡
¡¡¡¡
¡¡¡¡--¸ü¸Äµ±Ç°±í״̬
¡¡¡¡update Info set upstate=1 where id in(select id from dbo.bakInfo)
¡¡¡¡´Ë²Ù×÷Ö´ÐÐʱ¼ä£º
¡¡¡¡SQL Server ·ÖÎöºÍ±àÒëʱ¼ä:
¡¡¡¡CPU ʱ¼ä = 62 ºÁÃ룬ռÓÃʱ¼ä = 79 ºÁÃë¡£
¡¡¡¡SQL Server Ö´ÐÐʱ¼ä:
¡¡¡¡CPU ʱ¼ä = 188 ºÁÃ룬ռÓÃʱ¼ä = 318 ºÁÃë¡£
¡¡¡¡(100000 ÐÐÊÜÓ°Ïì)
¡¡¡¡SQL Server ·ÖÎöºÍ±àÒëʱ¼ä:
¡¡¡¡CPU ʱ¼ä = 0 ºÁÃ룬ռÓÃʱ¼ä = 1 ºÁÃë¡£
¡¡¡¡
¡¡¡¡
¡


Ïà¹ØÎĵµ£º

PL/SQLѧϰ±Ê¼ÇÆß


Oracle9iÒì³£´¦Àí·ÖΪϵͳԤ¶¨ÒåÒì³£´¦ÀíºÍ×Ô¶¨ÒåÒì³£´¦ÀíÁ½²¿·Ö¡£
×Ô¶¨ÒåÒì³£´¦Àí
1.¶¨ÒåÒì³£´¦Àí
declare Òì³£Ãû exception;
2.´¥·¢Òì³£´¦Àí
raise Òì³£Ãû
3.´¦ÀíÒì³£
exception
when Òì³£Ãû1 then
    Òì³£´¦ÀíÓï¾ä¶Î1;
when Òì³£Ãû2 then
    Òì³£´¦ÀíÓï¾ä¶Î2;
ʾÀý£º
se ......

SQL´¥·¢Æ÷

Ò»¸ö¼òµ¥µÄСʵÀý¾ÍÃ÷°×~£¡
 user±í
ÔÚÕâÕűíÖн¨Á¢´¥·¢Æ÷  
 Create   trigger   tiggername  
 on   user     
 for   delete     
 as   
 begin ......

Îå²½¸ã¶¨sql server2005Êý¾Ý¿âÈÕÖ¾Çå³ý

1¡¢µÚÒ»²½£¬Ñ¡ÖÐÒªÇå³ýÈÕÖ¾µÄÊý¾Ý¿â——ÓÒ¼ü——ÊôÐÔ¡£
 
2¡¢µÚ¶þ²½£ºÔÚÑ¡ÏîҳѡÖГѡÏ¬»Ö¸´Ä£Ê½Ñ¡Ôñ“¼òµ¥”£¬µã»÷×îϱßÈ·¶¨°´Å¥¡£
 
3¡¢µÚÈý²½£¬ÔÙÑ¡ÖÐÊý¾Ý¿âÓÒ¼ü——ÈÎÎñ——ÊÕËõ——Êý¾Ý¿â¡£
 
4¡¢µÚËIJ½£¬µã»÷&ldq ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ