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 ºÁÃë¡£
¡¡¡¡
¡¡¡¡
¡
Ïà¹ØÎĵµ£º
Ò»¡¢Ö÷¼üÓë¾Û¼¯Ë÷Òý²¢²»ÊÇÒ»¶ÔһƥÅäµÄ
Ò»°ãÇé¿öÏÂÎÒÃǶ¼ÈÏΪ,¾Û¼¯Ë÷ÒýºÍÖ÷¼üÊÇÏ໥ƥÅäµÄ,ÒòΪֻҪÄãÔÚSQLServer±íÖж¨ÒåÁËÒ»¸öÖ÷¼ü,ÄÇôSQLServer»áΪÕâ¸öÖ÷¼ü×Ô¶¯Ìí¼Ó¾Û¼¯Ë÷Òý.µ«ÊÇ,Èç¹ûÄãÏÈÔÚ±íÖлùÓÚÈÎÒâÒ»Áн¨Á¢¾Û¼¯Ë÷Òý,È»ºóÔÙÑ¡ÔñÁíÒ»ÁÐ×÷ΪÖ÷¼ü,Õâʱ,Õâ¸öSQLServer½«»á»ùÓÚÕâ¸öÖ÷¼ü½¨Á¢Ò»¸öΨһ·Ç¾Û¼¯Ë÷Òý.
¶þ¡¢ ......
£¨1£© Ñ¡Ôñ×îÓÐЧÂʵıíÃû˳Ðò(Ö»ÔÚ»ùÓÚ¹æÔòµÄÓÅ»¯Æ÷ÖÐÓÐЧ)£º
ORACLE µÄ½âÎöÆ÷°´ÕÕ´ÓÓÒµ½×óµÄ˳Ðò´¦Àífrom×Ó¾äÖеıíÃû£¬from×Ó¾äÖÐдÔÚ×îºóµÄ±í(»ù´¡±í driving table)½«±»×îÏÈ´¦Àí£¬ÔÚfrom×Ó¾äÖаüº¬¶à¸ö±íµÄÇé¿öÏÂ,Äã±ØÐëÑ¡Ôñ¼Ç¼ÌõÊý×îÉٵıí×÷Ϊ»ù´¡±í¡£Èç¹ûÓÐ3¸öÒÔÉϵıíÁ¬½Ó²éѯ, ÄǾÍÐèÒª ......
SQLÓï¾äÓÅ»¯Êµ¼ùÖ®Ò»SQL_TRACE
»·¾³£ºÔÚPL/sqlÉϵ÷ÊÔÊý¾Ý
Pl/sql developer¹¤¾ßÁ¬½ÓʵÀýºó¼´×÷Ϊһ¸öÓû§½ø³ÌÕ¼ÓÃÒ»¸ösession£»
select * from v$session t where t.PROGRAM='plsqldev.exe' and t.USERNAME='DZJC'
²éѯ½á¹ûÏÔʾÁ˼¸¸ö¹Ø¼üµÄ×Ö¶Î
SADDR RAW(4) S ......
Sql´úÂë:Powered by chenjiazi
--²éѯµ±Ì죺
select * from info where DateDiff(dd,datetime,getdate())=0
--²éѯ24СʱÄÚµÄ:
select * from info where DateDiff(hh,datetime,getDate())<=24
--infoΪ±íÃû,datetimeΪÊý ......