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

sql²éѯÓï¾äÖÐ inºÍ existsµÄÇø±ðÓëÐÔÄܱȽÏ

¶ÔInºÍexistsµÄÐÔÄܽøÐбȽϣ¬Ê×ÏÈÒªÖªµÀËüÃÇÁ½ÕßµÄÇø±ð¡£
in: È·¶¨¸ø¶¨µÄÖµÊÇ·ñÓë×Ó²éѯÖеÄÖµ»òÁбíÖеÄÖµÏàÆ¥Åä¡£
exists: Ö¸¶¨Ò»¸ö×Ó²éѯ£¬¼ì²âÐÐÊÇ·ñ´æÔÚ¡£
¿É·ÖÎöËüÃǵIJéѯÓï¾äÀ´µÃ³öÕæÊµµÄ²î±ð:
in
±ÈÈçSelect * from t1 where x in ( select y from t2 )
Ö´ÐеĹý³ÌÏ൱ÓÚ:
select *
  from t1, ( select distinct y from t2 ) t2
where t1.x = t2.y;
exists
±ÈÈçselect * from t1 where exists ( select t2.z from t2 where y = x )
Ö´ÐеĹý³ÌÏ൱ÓÚ:
for t in ( select * from t1 )
   loop
      if ( exists ( select t2.z from t2 where y = t.x )
      then
         OUTPUT THE RECORD
      end if
end loop
´ÓÉÏÃæµÄÓï¾ä¿ÉÒÔ¿´³ö£¬¶Ôt1±í²»¿É±ÜÃâµÄ½øÐÐÁËÒ»´ÎÈ«ÅÌɨÃè
inºÍexists
in ÊǰÑÍâ±íºÍÄÚ±í×÷hash Á¬½Ó£¬¶øexistsÊǶÔÍâ±í×÷loopÑ­»·£¬Ã¿´ÎloopÑ­»·ÔÙ¶ÔÄÚ±í½øÐвéѯ¡£
Ò»Ö±ÒÔÀ´ÈÏΪexists±ÈinЧÂʸߵÄ˵·¨ÊDz»×¼È·µÄ¡£
Èç¹û²éѯµÄÁ½¸ö±í´óСÏ൱£¬ÄÇôÓÃinºÍexists²î±ð²»´ó¡£
Èç¹ûÁ½¸ö±íÖÐÒ»¸ö½ÏС£¬Ò»¸öÊÇ´ó±í£¬Ôò×Ó²éѯ±í´óµÄÓÃexists£¬×Ó²éѯ±íСµÄÓÃin£º
ÀýÈ磺±íA£¨Ð¡±í£©£¬±íB£¨´ó±í£©
1£º
select * from A where cc in (select cc from B)
ЧÂʵͣ¬Óõ½ÁËA±íÉÏccÁеÄË÷Òý£»
select * from A where exists(select cc from B where cc=A.cc)
ЧÂʸߣ¬Óõ½ÁËB±íÉÏccÁеÄË÷Òý¡£
Ïà·´µÄ
2£º
select * from B where cc in (select cc from A)
ЧÂʸߣ¬Óõ½ÁËB±íÉÏccÁеÄË÷Òý£»
select * from B where exists(select cc from A where cc=B.cc)
ЧÂʵͣ¬Óõ½ÁËA±íÉÏccÁеÄË÷Òý¡£
not in ºÍnot exists
Èç¹û²éѯÓï¾äʹÓÃÁËnot in ÄÇôÄÚÍâ±í¶¼½øÐÐÈ«±íɨÃ裬ûÓÐÓõ½Ë÷Òý£»
¶ønot extsts µÄ×Ó²éѯÒÀÈ»ÄÜÓõ½±íÉϵÄË÷Òý¡£
ËùÒÔÎÞÂÛÄǸö±í´ó£¬ÓÃnot exists¶¼±Ènot inÒª¿ì¡£ 
 


Ïà¹ØÎĵµ£º

SQL Server 2000 µÄϵͳÊý¾Ý¿â

SQL Server 2000 µÄϵͳÊý¾Ý¿â
SQL Server 2000·þÎñÆ÷°²×°ºó»á½¨Á¢4ϵͳÊý¾Ý¿â¡£·Ö±ðÊÇmaster¡¢model¡¢msdb¡¢tempdb¡£
1¡¢masterÊý¾Ý¿â
    masterÊý¾Ý¿âÊÇSQL Server 2000ÖÐ×îÖØÒªµÄÊý¾Ý¿â£¬¼Ç¼ÁËSQL Server 2000µÄ·þÎñÆ÷¼¶ÏµÍ³ÐÅÏ¢£¬°üÀ¨ËùÓÐÕË»§ºÍÃÜÂ룬´ÅÅ̿ռ䡢Îļþ·ÖÅäºÍʹÓá¢ÏµÍ³¼¶µÄÅäÖòÎÊý¡ ......

SQL Server³£ÓÃϵͳ´æ´¢¹ý³Ì

--ÁгöSQL ServerʵÀýÖеÄÊý¾Ý¿â
sp_databases
--·µ»ØSQL Server¡¢Êý¾Ý¿âÍø¹Ø»ò»ù´¡Êý¾ÝÔ´µÄÌØÐÔÃûºÍÆ¥ÅäÖµµÄÁбí
sp_server_info
--·µ»Øµ±Ç°»·¾³ÖеĴ洢¹ý³ÌÁбí
sp_stored_procedures
--·µ»Øµ±Ç°»·¾³Ï¿ɲéѯµÄ¶ÔÏóµÄÁÐ±í£¨ÈκοɳöÏÖÔÚ from ×Ó¾äÖеĶÔÏó£©
sp_tables
select * from sysobjects
---Ìí¼Ó»ò¸ü¸Ä ......

¡¾SQL SERVER2005Ò³Ãæ´æ´¢3Ö® ¾Û¼¯Ë÷ÒýµÄ´æ´¢¡¿


                                                 &nbs ......

c#Æô¶¯Sql Server·þÎñ

³ÌÐòÆô¶¯Sql ServerÆäʵºÜ¼òµ¥
´úÂ룺
System.ServiceProcess.ServiceController   myController   =
new   System.ServiceProcess.ServiceController("MSSQL$ACCP4444"); //·þÎñÃû³Æ ÕÒÁ˰ëÌì²ÅÕÒµ½£¬±¿ËÀÎÒÍêÁË¡£ÔÚ·þÎñÉÏÓÒ¼üÊôÐÔ£¬ÄÜ¿´µ½
if (myController.CanStop)
{ }
else ......

»ñµÃÊý¾Ý¿âÃû³Æ///////²éѯÊý¾Ý¿âÀïËùÓбíµÄsqlÓï¾ä£¡

select   name   as   ¿âÃû   from   master..sysdatabases   where   dbid>=7 »ñµÃÊý¾Ý¿âÃû³Æ
select * from sysobjects where xtype='u' or xtype='v' ²éѯÊý¾Ý¿âÀïËùÓбíµÄsqlÓï¾ä£¡
select name from sysobjects where type='u' ²éѯһ¸ö¿ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ