SQL²éÑ¯ÖØ¸´Êý¾ÝºÍÇå³ýÖØ¸´Êý¾Ý
ÓÐÀý±í£ºemp
emp_no name age
001 Tom 17
002 Sun 14
003 Tom 15
004 Tom 16
ÒªÇó£º
ÁгöËùÓÐÃû×ÖÖØ¸´µÄÈ˵ļǼ
(1)×îÖ±¹ÛµÄ˼·£ºÒªÖªµÀËùÓÐÃû×ÖÓÐÖØ¸´ÈË×ÊÁÏ£¬Ê×ÏȱØÐëÖªµÀÄĸöÃû×ÖÖØ¸´ÁË£º
select name from emp group by name having count(*)>1
ËùÓÐÃû×ÖÖØ¸´È˵ļǼÊÇ:
select * from emp
where name in (select name from emp group by name having count(*)>1)
(2)ÉÔ΢ÔÙ´ÏÃ÷Ò»µã£¬¾Í»áÏëµ½£¬Èç¹û¶Ôÿ¸öÃû×Ö¶¼ºÍÔ±í½øÐбȽϣ¬´óÓÚ2¸öÈËÃû×ÖÓëÕâÌõ¼Ç¼ÏàͬµÄ¾ÍÊǺϸñµÄ £¬¾ÍÓÐ
select * from emp where (select count(*) from emp e where e.name=emp.name) >1
--×¢ÒâÒ»ÏÂÕâ¸ö>1£¬ÏëÏÂÈç¹ûÊÇ =1£¬Èç¹ûÊÇ =2 Èç¹ûÊÇ>2 Èç¹û e ÊÇÁíÍâÒ»ÕÅ±í ¶øÇÒÊÇ=0Äǽá¹û ¾Í¸üºÃÍæÁË:)
Õâ¸ö¹ý³ÌÊÇ ÔÚÅжϹ¤ºÅΪ001µÄ ÈË µÄʱºòÏÈÈ¡µÃ 001µÄ Ãû×Ö£¨emp.name£© È»ºóºÍÔ±íµÄÃû×Ö½øÐÐ±È½Ï e.name
×¢ÒâeÊÇempµÄÒ»¸ö±ðÃû¡£
ÔÙÉÔ΢ÏëµÃ¶àÒ»µã£¬¾Í»áÏëµ½£¬Èç¹ûÓÐÁíÍâÒ»¸öÃû×ÖÏàͬµÄÈ˹¤ºÅ²»ÓëËýËûÏàͬÄÇôÕâÌõ¼Ç¼·ûºÏÒªÇó£º
select * from emp
where exists&
Ïà¹ØÎĵµ£º
----start
·²ÊÇÖªµÀÊý¾Ý¿âµÄÈ˶¼ÖªµÀSQL£¬·²ÊǶÔSQLÓÐÒ»µãÁ˽âµÄÈ˶¼¾õµÃSQLºÜ¼òµ¥£¬·²ÊÇÓÐÕâÖָоõµÄÈ˶¼ÊÇSQLµÃ³õ¼¶Óû§£¬ÒòΪËûѧ»áÁËÔö²éɾ¸Ä¾ÍÒÔΪÕâ¾ÍÊÇSQLµÄÈ«²¿¡£Ä¿Ç°µÄ´ó²¿·ÖÓ¦ÓÃÈí¼þ¶¼ÊÇÒÔÊý¾Ý¿âΪÖÐÐÄ£¬Ëæ×ÅÈí¼þµÄÔËÐУ¬Êý¾ÝÁ¿»áÔ½À´Ô½´ó¡£ÈçºÎÓüò½à¡¢¸ßЧµÄSQLÓï¾ä²Ù×÷Êý¾ÝÏÔµÃÔ½À ......
USE tempdb
GO
CREATE TABLE AuctionItems
(
itemid INT NOT NULL PRIMARY KEY NONCLUSTERED,
itemtype NVARCHAR(30) NOT NULL,
whenmade INT&nb ......
½ñÌìÔÚÂÛ̳ÄÚ¿´µ½Ò»Æª ÃæÊÔÌ⣬ÊǹØÓÚwhere ºÍon µÄÇø±ðµÄ£¬×Ô¼ºÒ²²»¶®£¬ÔÚÍøÉÏËѳöһƪÎÄÕ£¬¼ÓÉî×Ô¼ºµÄ¼ÇÒä
ת
Êý¾Ý¿âÔÚͨ¹ýÁ¬½ÓÁ½ÕÅ»ò¶àÕűíÀ´·µ»Ø¼Ç¼ʱ£¬¶¼»áÉú³ÉÒ»ÕÅÖмäµÄÁÙʱ±í£¬È»ºóÔÙ½«ÕâÕÅÁÙʱ±í·µ»Ø¸øÓû§¡£
ÔÚʹÓÃleft jionʱ£¬onºÍwhereÌõ¼þµÄÇø±ðÈçÏ£º
1¡¢ onÌõ¼þ ......
from×Ó¾äÖÐдÔÚ×îºóµÄ±í(»ù´¡±í£¬driving table)½«±»×îÏÈ´¦Àí£¬ÔÚfrom×Ó¾äÖаüº¬¶à¸ö±íµÄÇé¿öÏ£¬Äã±ØÐëÑ¡Ôñ¼Ç¼ÌõÊý×îÉٵıí×÷Ϊ»ù´¡±í¡£
¡¡¡¡Ìá¸ßSQLÖ´ÐÐЧÂʵļ¸µã½¨Òé:
¡¡¡¡¡ô¾¡Á¿²»ÒªÔÚwhereÖаüº¬×Ó²éѯ;
¡¡¡¡¹ØÓÚʱ¼äµÄ²éѯ£¬¾¡Á¿²»ÒªÐ´³É£ºwhere to_char(dif_date,'yyyy-mm-dd')=to_char('2007-07-01',' ......