SQLÖÐJOINºÍUNIONÇø±ð¡¢Ó÷¨¼°Ê¾Àý
1.JOINºÍUNIONÇø±ð
join ÊÇÁ½Õűí×ö½»Á¬ºóÀïÃæÌõ¼þÏàͬµÄ²¿·Ö¼Ç¼²úÉúÒ»¸ö¼Ç¼¼¯£¬
unionÊDzúÉúµÄÁ½¸ö¼Ç¼¼¯(×Ö¶ÎÒªÒ»ÑùµÄ)²¢ÔÚÒ»Æð£¬³ÉΪһ¸öеļǼ¼¯ ¡£
JOINÓÃÓÚ°´ÕÕONÌõ¼þÁª½ÓÁ½¸ö±í£¬Ö÷ÒªÓÐËÄÖÖ£º
INNER JOIN£ºÄÚ²¿Áª½ÓÁ½¸ö±íÖеļǼ£¬½öµ±ÖÁÉÙÓÐÒ»¸öͬÊôÓÚÁ½±íµÄÐзûºÏÁª½ÓÌõ¼þʱ£¬ÄÚÁª½Ó²Å·µ»ØÐС£ÎÒÀí½âµÄÊÇÖ»Òª¼Ç¼²»·ûºÏONÌõ¼þ£¬¾Í²»»áÏÔʾÔÚ½á¹û¼¯ÄÚ¡£
LEFT JOIN / LEFT OUTER JOIN£ºÍⲿÁª½ÓÁ½¸ö±íÖеļǼ£¬²¢°üº¬×ó±íÖеÄÈ«²¿¼Ç¼¡£Èç¹û×ó±íµÄij¼Ç¼ÔÚÓÒ±íÖÐûÓÐÆ¥Åä¼Ç¼£¬ÔòÔÚÏà¹ØÁªµÄ½á¹û¼¯ÖÐÓÒ±íµÄËùÓÐÑ¡ÔñÁбíÁоùΪ¿ÕÖµ¡£Àí½âΪ¼´Ê¹²»·ûºÏONÌõ¼þ£¬×ó±íÖеļǼҲȫ²¿ÏÔʾ³öÀ´£¬ÇÒ½á¹û¼¯ÖиÃÀà¼Ç¼µÄÓÒ±í×Ö¶ÎΪ¿ÕÖµ¡£
RIGHT JOIN / RIGHT OUTER JOIN£ºÍⲿÁª½ÓÁ½¸ö±íÖеļǼ£¬²¢°üº¬ÓÒ±íÖеÄÈ«²¿¼Ç¼¡£¼òµ¥Ëµ¾ÍÊǺÍLEFT JOIN·´¹ýÀ´¡£
FULL JOIN / FULL OUTER JOIN£ºÍêÕûÍⲿÁª½Ó·µ»Ø×ó±íºÍÓÒ±íÖеÄËùÓÐÐС£¾ÍÊÇLEFT JOINºÍRIGHT JOINºÍºÏ²¢£¬×óÓÒÁ½±íµÄÊý¾Ý¶¼È«²¿ÏÔʾ¡£
JOINµÄ»ù±¾Óï·¨£º
Select table1.* from table1 JOIN table2 ON table1.id=table2.id
sqlд·¨
ÄÚÁ¬½Óinner join£º
SELECT msp.name, party.name
from msp JOIN party ON party=code
»ò
SELECT msp.name, party.name
from msp inner JOIN party ON party=code
×óÁ¬½Óleft join £º
SELECT msp.name, party.name
from msp LEFT JOIN party ON party=code
ÓÒÁ¬½Óright join £º
SELECT msp.name, party.name
from msp RIGHT JOIN party ON msp.party=party.code
È«Á¬½Ó(full join)£º
SELECT msp.name, party.name
from msp FULL JOIN party ON msp.party=party.code
UNIONÔËËã·û
½«Á½¸ö»ò¸ü¶à²éѯµÄ½á¹û¼¯×éºÏΪµ¥¸ö½á¹û¼¯£¬¸Ã½á¹û¼¯°üº¬ÁªºÏ²éѯÖеÄËùÓвéѯµÄÈ«²¿ÐС£UNIONµÄ½á¹û¼¯ÁÐÃûÓëUNIONÔËËã·ûÖеÚÒ»¸öSelectÓï¾äµÄ½á¹û¼¯µÄÁÐÃûÏàͬ¡£ÁíÒ»¸öSelectÓï¾äµÄ½á¹û¼¯ÁÐÃû½«±»ºöÂÔ¡£
ÆäÖÐÁ½ÖÖ²»Í¬µÄÓ÷¨ÊÇUNIONºÍUNION ALL£¬Çø±ðÔÚÓÚUNION´Ó½á¹û¼¯ÖÐɾ³ýÖØ¸´µÄÐС£Èç¹ûʹÓÃUNION ALL ½«°üº¬ËùÓÐÐв¢ÇÒ½«²»É¾³ýÖØ¸´µÄÐС£
UNIONºÍUNION ALLµÄÇø±ð£º
union ¼ì²éÖØ¸´
union all ²»×ö¼ì²é
±ÈÈç select 'a' union select 'a' Êä³ö¾ÍÊÇÒ»ÐÐ a
±ÈÈç select 'a' union all select 'a' Êä³ö¾ÍÊÇÁ½ÐÐ a
2. ͨ¹ýÏÂÃæµÄÀý×Ó£¬¿ÉÒÔÇåÎúµÄ¿´³öºÍÀí½â2ÕßµÄÇø±ð
ʵÀý1 µäÐ͵Ķþ±íÁ¬½ÓÑÝʾ
¼Ù¶¨ÓÐÁ½¸ö±íTable1ºÍTable2£¬Æä°üº¬µÄÁкÍÊý¾Ý·Ö
Ïà¹ØÎĵµ£º
---È·ÈÏ·ÖÅäÆ¿¾±
SELECT session_id,wait_duration_ms,resource_description
from sys.dm_os_waiting_tasks
WHERE wait_type LIKE 'PAGE%LATCH_%' AND
resource_description LIKE '2:%'
--²éѯtempdbÖе±Ç°Òý·¢×î¶à·ÖÅäºÍ»ØÊÕ²Ù×÷
SELECT TOP 10
t1.session_id
,t1. ......
ÆäʵÄã¿ÉÒÔʹÓÃÊÂÎñ´¦Àí
±È·½ËµÔÚÒ»¸ö×Ö¶ÎÀïÃæÌí¼ÓÒ»¸öboolean µÄ×ֶε±ÄãÒª´¦Àí¸Ã×ֶεÄʱºò¾Í True ÄÄô±ðµÄÈ˶¼²»¿ÉÒÔ½øÐвÙ×÷
¡¡Èç¹ûÊÇFalse ÄÄô¾Í¿ÉÒÔ½øÐвÙ×÷¡«¡«ºÇ¿É¡«¡«ÎÒÊÇÕâÑùµÄ
¡¡¡¡²»¹ýÄã¿ÉÒÔ¿´¿´¡¡
¡¡SQLËø»úÖÆ
¡¡¡¡ÒÔÏÂÊÇÎÒÕÒµÄһЩÁÏ¡¡Èç¹ûÒªÀí½âSQLËø»úÖÆ ×îºÃ°ÑÏÂÀ´¿´ÍêŶ
ĬÈϵÄÊÂÎñ¸ôÀë¼ ......
1.Union
UNION Ö¸ÁîµÄÄ¿µÄÊǽ«Á½¸ö SQL Óï¾äµÄ½á¹ûºÏ²¢ÆðÀ´¡£´ÓÕâ¸ö½Ç¶ÈÀ´¿´£¬ UNION ¸ú JOIN ÓÐЩÐíÀàËÆ£¬ÒòΪÕâÁ½¸öÖ¸Áî¶¼¿ÉÒÔÓɶà¸ö±í¸ñÖÐߢȡ×ÊÁÏ¡£ UNION µÄÒ»¸öÏÞÖÆÊÇÁ½¸ö SQL Óï¾äËù²úÉúµÄÀ¸Î»ÐèÒªÊÇͬÑùµÄ×ÊÁÏÖÖÀà¡£ÁíÍ⣬µ±ÎÒÃÇÓà UNIONÕâ¸öÖ¸Áîʱ£¬ÎÒÃÇÖ»»á¿´µ½²»Í¬µÄ×ÊÁÏÖµ (ÀàËÆ SELECT DISTINCT)¡£
UNION µ ......