Éè¼Æ¸ßЧsqlÒ»°ã¾Ñé̸ £¨×ª£©
1²»ÓÃÔÚsqlÓï¾äʹÓÃϵͳĬÈϵı£Áô¹Ø¼ü×Ö
2¾¡Á¿ÓÃexists ºÍ not exists ´úÌæ in ºÍ not in
ÕâÌõÔÚsql2005Ö®ºó£¬ÔÚË÷ÒýÒ»Ñù£¬Í³¼ÆÐÅÏ¢Ò»ÑùµÄÇé¿öÏ£¬exists £¬inЧ¹ûÊÇÒ»ÑùµÄ¡£
ÒÔAdventureWorksÊý¾Ý¿âΪÀý£¬²éѯÔÚHumanResources.EmployeeAddressÓеØÖ·µÄEmployeeÐÅÏ¢£¬
ÓÃin Óï¾äÈçÏ£º
SET STATISTICS IO ON
SELECT * from HumanResources.Employee
WHERE EmployeeID IN (SELECT EmployeeID from HumanResources.EmployeeAddress ea)
SET STATISTICS IO OFF
Ö´Ðкó£¬ÏûÏ¢ÈçÏ£º
(290 ÐÐÊÜÓ°Ïì)
±í'EmployeeAddress'¡£É¨Ãè¼ÆÊý1£¬Âß¼¶ÁÈ¡4 ´Î£¬ÎïÀí¶ÁÈ¡0 ´Î£¬Ô¤¶Á0 ´Î£¬lob Âß¼¶ÁÈ¡0 ´Î£¬lob ÎïÀí¶ÁÈ¡0 ´Î£¬lob Ô¤¶Á0 ´Î¡£
±í'Employee'¡£É¨Ãè¼ÆÊý1£¬Âß¼¶ÁÈ¡9 ´Î£¬ÎïÀí¶ÁÈ¡0 ´Î£¬Ô¤¶Á0 ´Î£¬lob Âß¼¶ÁÈ¡0 ´Î£¬lob ÎïÀí¶ÁÈ¡0 ´Î£¬lob Ô¤¶Á0 ´Î¡£
Ö´Ðмƻ®Èçͼ
ÓÃexists £¬Óï¾äÈçÏ£¬
SET STATISTICS IO ON
SELECT * from HumanResources.Employee
WHERE EXISTS(SELECT EmployeeID from HumanResources.EmployeeAddress ea
WHERE
HumanResources.Employee.EmployeeID=ea.EmployeeID)
SET STATISTICS IO OFF
Ö´Ðкó£¬ÏûÏ¢ÈçÏ£º
(290 ÐÐÊÜÓ°Ïì)
±í'EmployeeAddress'¡£É¨Ãè¼ÆÊý1£¬Âß¼¶ÁÈ¡4 ´Î£¬ÎïÀí¶ÁÈ¡0 ´Î£¬Ô¤¶Á0 ´Î£¬lob Âß¼¶ÁÈ¡0 ´Î£¬lob ÎïÀí¶ÁÈ¡0 ´Î£¬lob Ô¤¶Á0 ´Î¡£
±í'Employee'¡£É¨Ãè¼ÆÊý1£¬Âß¼¶ÁÈ¡9 ´Î£¬ÎïÀí¶ÁÈ¡0 ´Î£¬Ô¤¶Á0 ´Î£¬lob Âß¼¶ÁÈ¡0 ´Î£¬lob ÎïÀí¶ÁÈ¡0 ´Î£¬lob Ô¤¶Á0 ´Î¡£
Ö´Ðмƻ®Èçͼ£º
3¾¡Á¿²»ÓÃselect * from …..,¶øÒªÐ´×Ö¶ÎÃû select field1,field2,…
ÕâÌõûʲôºÃ˵µÄ£¬Ö÷ÒªÊǰ´Ðè²éѯ£¬²»Òª·µ»Ø²»±ØÒªµÄÁкÍÐС£
4ÔÚsql ²éѯÖÐÓ¦¾¡Á¿Ê¹ÓÃË÷ÒýÁÐÀ´¼Ó¿ì²éѯËÙ¶È
5ÈκÎÔÚOrder by Óï¾äµÄ·ÇË÷ÒýÏî»òÕßÓмÆËã±í´ïʽ¶¼½«½µµÍ²éѯËÙ¶È
6ÈκÎÔÚwhere×Ó¾äÖÐʹÓÃis null »ò is not null µÄÓï¾ä²»ÔÊÐíʹÓÃË÷Òý£¬Ð§ÂʽϵÍ
7ͨÅä·û%ÔÚ´ÊÊ×ʱ£¬ÏµÍ³²»Ê¹ÓÃË÷
Ïà¹ØÎĵµ£º
ÊìϤSQL SERVER 2000µÄÊý¾Ý¿â¹ÜÀíÔ±¶¼ÖªµÀ£¬ÆäDTS¿ÉÒÔ½øÐÐÊý¾ÝµÄµ¼Èëµ¼³ö£¬Æäʵ£¬ÎÒÃÇÒ²¿ÉÒÔʹÓÃTransact-SQLÓï¾ä½øÐе¼Èëµ¼³ö²Ù×÷¡£ÔÚTransact-SQLÓï¾äÖУ¬ÎÒÃÇÖ÷ҪʹÓÃOpenDataSourceº¯Êý¡¢OPENROWSET º¯Êý£¬¹ØÓÚº¯ÊýµÄÏêϸ˵Ã÷£¬Çë²Î¿¼SQLÁª»ú°ïÖú¡£ÀûÓÃÏÂÊö·½·¨£¬¿ÉÒÔÊ®·ÖÈÝÒ×µØÊµÏÖSQL SERVER¡¢ACCESS¡¢EXCELÊý¾ ......
¡¡¡¡ÈÕǰSQL INJECTIONµÄ¹¥»÷²âÊÔÓúÑÝÓúÁÒ£¬ºÜ¶à´óÐ͵ÄÍøÕ¾ºÍÂÛ̳¶¼Ïà¼Ì±»×¢Èë¡£ÕâÐ©ÍøÕ¾Ò»°ãʹÓõĶàΪSQL SERVERÊý¾Ý¿â£¬ÕýÒòΪÈç´Ë£¬ºÜ¶àÈË¿ªÊ¼»³ÒÉSQL SERVERµÄ°²È«ÐÔ¡£ÆäʵSQL SERVER 2000ÒѾͨ¹ýÁËÃÀ¹úÕþ¸®µÄC2¼¶°²È«ÈÏÖ¤-ÕâÊǸÃÐÐÒµËùÄÜÓµÓеÄ×î¸ßÈÏÖ¤¼¶±ð£¬ËùÒÔʹÓÃSQL SERVER»¹ÊÇÏ൱µÄ°²È«µÄ¡£µ±È»ºÍORCAL¡¢DB2µ ......
µÚÒ»ÖÖ·½·¨: ʹÓÃoutput²ÎÊý
USE AdventureWorks;
GO
IF OBJECT_ID ( 'Production.usp_GetList', 'P' ) IS NOT NULL
DROP PROCEDURE Production.usp_GetList;
GO
CREATE PROCEDURE Production.usp_GetList @product varchar(40)
, @maxprice money
, ......
1¡¢Ã»ÓÐË÷Òý»òÕßûÓÐÓõ½Ë÷Òý(ÕâÊDzéѯÂý×î³£¼ûµÄÎÊÌ⣬ÊdzÌÐòÉè¼ÆµÄȱÏÝ)¡¡¡¡
¡¡¡¡2¡¢I/OÍÌÍÂÁ¿Ð¡£¬ÐγÉÁËÆ¿¾±Ð§Ó¦¡£¡¡¡¡
¡¡¡¡3¡¢Ã»Óд´½¨¼ÆËãÁе¼Ö²éѯ²»ÓÅ»¯¡£¡¡¡¡
¡¡¡¡4¡¢ÄÚ´æ²»×ã¡¡¡¡
¡¡¡¡5¡¢ÍøÂçËÙ¶ÈÂý¡¡¡¡
¡¡¡¡6¡¢²éѯ³öµÄÊý¾ÝÁ¿¹ý´ó£¨¿ÉÒÔ²ÉÓöà´Î²éѯ£¬ÆäËûµÄ·½·¨½µµÍÊý¾ÝÁ¿£©¡¡¡¡
¡¡¡¡7¡¢Ëø»òÕßËÀËø ......