SQL Server: Inner Join¼°Outer Join, Natrual Jion
Ò»¡¢NATURAL JOIN£¨×ÔÈ»Á¬½Ó£©
Á½Õűíͨ¹ýNATURAL JOINÁ¬½ÓµÄʱºò£¬Ï൱ÓÚÓиöÒþº¬µÄWHERE×Ӿ䣬¶ÔÁ½ÕűíÖÐͬÃûµÄ¶ÔÓ¦ÁÐÏà±È½Ï¿´ÊÇ·ñÏàµÈ¡£
¶þ¡¢CROSS JOIN£¨´´½¨µÑ¿¨¶û»ý£©
¶ÔÁ½Õűíͨ¹ý½»²æÁªºÏ²úÉúµÚÈýÕÅ·µ»Ø½á¹û¼¯µÄ±í¡£Ï൱ÓÚÆÕͨµÄÁ¬½Ó¡£
Èý¡¢INNER JOIN£¨ÄÚÁ¬½Ó£©
ÄÚÁ¬½Ó¾ÍÏ൱ÓÚÆÕͨµÄCROSS JOIN£¬Ö»ÊǸñʽ²»Ò»Ñù£¬INNER JOINÔÚºóÃæÓÐÒ»¸öON×Ӿ䣨Ï൱ÓÚWHERE£©µÄËÑË÷Ìõ¼þ£¬ÓÃÓÚ¹ýÂË·µ»ØµÄÐС£
ËÄ¡¢OUTER JOIN £¨ÍâÁ¬½Ó£©
select * from ta outer join tb on (ta.c1=tb.c1)
outer join¸æËßDBMSÉú³É½á¹û±í£¬Ôڴ˱íÖв»½ö´øÓÐÏà¹Ø(ta.c1=tb.c1)Ðжԣ¬¶øÇÒ»¹ÓÐÀ´×ÔÁ½¸öÔ´±íÖÐÈÎÒ»±íµÄ²»Æ¥ÅäµÄÐС£
Îå¡¢LEFT OUTER JOIN£¨×óÁ¬½Ó£© RIGHT OUTER JOIN£¨ÓÒÁ¬½Ó£©
select * from ta left outer join tb on (ta.c1=tb.c1)
select * from ta right outer join tb on (ta.c1=tb.c1)
left outer join(left join) ¸æËßDBMSÉú³É°üÀ¨ÁªºÏÐкÍÈκβ»Æ¥ÅäµÄÐеĽá¹û±í£¬µ«ÊDz»Æ¥ÅäµÄÐÐϵÀ´×Ô²éѯµÄfrom×Ó¾äÖÐLEFT OUTER JOIN¹Ø¼ü´Ê×ó±ßµÄ±íÖС£
right outer join(right join)Óëleft outer join(left join)¸ÕºÃÏà·´¡£
Áù¡¢FULL OUTER JOIN£¨È«Á¬½Ó£©
FULL OUTER JOIN ·µ»Ø×éºÏÁËLEFT OUTER JOIN ºÍRIGHT OUTER JOIN½á¹ûµÄ±í¡£
ÒÔÏÂÊÇInner Join¼°Outer JoinµÄ¾ßÌå½éÉÜ£º
ÔÚÒ»¸öÕý¹æ»¯µÄÊý¾Ý¿â»·¾³ÖÐ, ÎÒÃdz£»áÅöµ½Õâ¿îÇéÐÎ: ËùÐèµÄ×ÊÁϲ¢²»ÊÇ·ÅÔÚͬһ¸ö×ÊÁϱíÖÐ, ÔÚÕâ¸öʱºò, Äã¾ÍÒªÓõ½ Join¡£
¡¡¡¡µ±È» Join ÈçºÎ½«²»Í¬µÄÊý¾Ý¿âµÄ×ÊÁϽáºÏ, »¹Òª¿´ÄãÈçºÎʹÓÃËü, Ò»¹²ÓÐËÄÖÖ²»Í¬µÄ Join µÄ·½Ê½, ÔÚÕâÆªÎÄÕÂÖÐÎÒÃǽ«ÎªÄã½éÉÜ Inner Join ¼° Outer Join ÒÔ¼°ÆäÓ¦Óá£
¡¡¡¡Inner Join
¡¡¡¡Inner Join Ó¦¸ÃÊÇ×î³£ÓÃµÄ Join ·½Ê½, ËüÖ»»á´«»Ø·ûºÏ Join ¹æÔòµÄ¼Í¼, »¹ÊÇÏÈÀ´¿´¿´Óï·¨£º
Select <ҪѡÔñµÄ×Ö¶Î> from <Ö÷Òª×ÊÁϱí> <Join ·½Ê½> <´ÎÒª×ÊÁϱí> [On <Join ¹æÔò>]
¡¡¡¡ÏÖÔÚÎÒÃÇÀûÓà MS SQL ÄÚ½¨µÄ±±·çÊý¾Ý¿âÀ´Êµ¼ÊÁ·Ï°Ò»ÏÂ! Ïë¶àÁ˽â MS SQL µÄÄÚ½¨Êý¾Ý¿â, Äã¿ÉÒÔ¿´¿´ SQL Server µÄÄÚ½¨Êý¾Ý¿âÕâÆªÎÄÕ¡£
¡¡¡¡Çë´ò¿ª
Ïà¹ØÎĵµ£º
create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',
@pagesize int output,--ÿҳÏÔʾ¼Ç¼ÌõÊý
@currentpage int output,--µÚ¼¸Ò³
@orderid nvarchar(50),--Ö÷¼üÅÅÐò
@sort int,--ÅÅÐò·½Ê½£¬1±íʾÉýÐò£¬0±íʾ½µÐòÅÅÁÐ
......
UNION½«Á½¸ö»òÁ½¸öÒÔÉϵIJéѯ½á¹ûºÏ²¢ÎªÒ»¸ö½á¹û¼¯£¬ËüÓëʹÓÃÁ¬½Ó²éѯºÏ²¢Á½¸ö±íµÄÁÐÊDz»Í¬µÄ£¬Ê¹
ÓÃUNIONºÏ²¢²éѯ±ØÐë×ñÊØ£º1ÁеÄÊýÄ¿ºÍ˳Ðò±ØÐëÒ»Ö£»2Êý¾ÝµÄÀàÐͱØÐë¼æÈÝ¡£
select Óï¾ä
UNION [all]
select Óï¾ä
¿ÉÒÔ¿´µ½£¬Ö»Òª¶ÔÓ¦×ֶεÄÀàÐÍÏàͬ¾Í¿ÉÒÔÍê³ÉºÏ²¢²Ù×÷£¬µ«ÊÇΪÁËÓÐÒâÒ壬Á½¸ö²éѯµÄ½á¹ûÓ¦¸ÃΪÏàͬ
µ ......
sqlÖеÄindexof£¬º¯Êý½éÉÜ
È¡³öÎļþÃûÖеĺó׺Ãû£¬ÀýÈ磺1.exe±ä³Éexe
declare @fileName varchar(100)
set @fileName='aaa.exe'
select substring(@fileName,charindex('.',@fileName)+1,len(@fileName))
------------------------------------------------
--×Ô¶¨Ò庯Êý£ºÈ¡ÎļþÃûµÄÎļþÀàÐÍ£¬ÀýÈç1.exeµÄexe
--- ......
ÒòΪ²»Ö§³Ö´æ´¢¹ý³Ì£¬ËùÒÔ²éѯÓï¾äÈçÏ£º
string SLQuery =
"INSERT INTO ParkLocation(ParkName,Latitude, Longtitude,Charge,TotalSpace,EmptySpace,ParkCaption,UpdataTime)"+
&nb ......
UNION Ö¸ÁîµÄÄ¿µÄÊǽ«Á½¸ö SQL Óï¾äµÄ½á¹ûºÏ²¢ÆðÀ´¡£´ÓÕâ¸ö½Ç¶ÈÀ´¿´£¬ UNION ¸ú JOIN ÓÐЩÐíÀàËÆ£¬ÒòΪÕâÁ½¸öÖ¸Áî¶¼¿ÉÒÔÓɶà¸ö±í¸ñÖÐߢȡ×ÊÁÏ¡£ UNION µÄÒ»¸öÏÞÖÆÊÇÁ½¸ö SQL Óï¾äËù²úÉúµÄÀ¸Î»ÐèÒªÊÇͬÑùµÄ×ÊÁÏÖÖÀà¡£ÁíÍ⣬µ±ÎÒÃÇÓà UNIONÕâ¸öÖ¸Áîʱ£¬ÎÒÃÇÖ»»á¿´µ½²»Í¬µÄ×ÊÁÏÖµ (ÀàËÆ SELECT DISTINCT)¡£ unionÖ»Êǽ«Á½¸ö½á¹ ......