sqlÖ®left join¡¢right join¡¢inner joinµÄÇø±ð
left join(×óÁª½Ó) ·µ»Ø°üÀ¨×ó±íÖеÄËùÓмǼºÍÓÒ±íÖÐÁª½á×Ö¶ÎÏàµÈµÄ¼Ç¼
right join(ÓÒÁª½Ó) ·µ»Ø°üÀ¨ÓÒ±íÖеÄËùÓмǼºÍ×ó±íÖÐÁª½á×Ö¶ÎÏàµÈµÄ¼Ç¼
inner join(µÈÖµÁ¬½Ó) Ö»·µ»ØÁ½¸ö±íÖÐÁª½á×Ö¶ÎÏàµÈµÄÐÐ
¾ÙÀýÈçÏ£º
--------------------------------------------
±íA¼Ç¼ÈçÏ£º
aID¡¡¡¡¡¡¡¡¡¡aNum
1¡¡¡¡¡¡¡¡¡¡a20050111
2¡¡¡¡¡¡¡¡¡¡a20050112
3¡¡¡¡¡¡¡¡¡¡a20050113
4¡¡¡¡¡¡¡¡¡¡a20050114
5¡¡¡¡¡¡¡¡¡¡a20050115
±íB¼Ç¼ÈçÏÂ:
bID¡¡¡¡¡¡¡¡¡¡bName
1¡¡¡¡¡¡¡¡¡¡2006032401
2¡¡¡¡¡¡¡¡¡¡2006032402
3¡¡¡¡¡¡¡¡¡¡2006032403
4¡¡¡¡¡¡¡¡¡¡2006032404
8¡¡¡¡¡¡¡¡¡¡2006032408
--------------------------------------------
1.left join
sqlÓï¾äÈçÏÂ:
select * from A
left join B
on A.aID = B.bID
½á¹ûÈçÏÂ:
aID¡¡¡¡¡¡¡¡¡¡aNum¡¡¡¡¡¡¡¡¡¡bID¡¡¡¡¡¡¡¡¡¡bName
1¡¡¡¡¡¡¡¡¡¡a20050111¡¡¡¡¡¡¡¡1¡¡¡¡¡¡¡¡¡¡2006032401
2¡¡¡¡¡¡¡¡¡¡a20050112¡¡¡¡¡¡¡¡2¡¡¡¡¡¡¡¡¡¡2006032402
3¡¡¡¡¡¡¡¡¡¡a20050113¡¡¡¡¡¡¡¡3¡¡¡¡¡¡¡¡¡¡2006032403
4¡¡¡¡¡¡¡¡¡¡a20050114¡¡¡¡¡¡¡¡4¡¡¡¡¡¡¡¡¡¡2006032404
5¡¡¡¡¡¡¡¡¡¡a20050115¡¡¡¡¡¡¡¡NULL¡¡¡¡¡¡¡¡¡¡NULL
£¨ËùÓ°ÏìµÄÐÐÊýΪ 5 ÐУ©
½á¹û˵Ã÷:
left joinÊÇÒÔA±íµÄ¼Ç¼Ϊ»ù´¡µÄ,A¿ÉÒÔ¿´³É×ó±í,B¿ÉÒÔ¿´³ÉÓÒ±í,left joinÊÇÒÔ×ó±íΪ׼µÄ.
»»¾ä»°Ëµ,×ó±í(A)µÄ¼Ç¼½«»áÈ«²¿±íʾ³öÀ´,¶øÓÒ±í(B)Ö»»áÏÔʾ·ûºÏËÑË÷Ìõ¼þµÄ¼Ç¼(Àý×ÓÖÐΪ: A.aID = B.bID).
B±í¼Ç¼²»×ãµÄµØ·½¾ùΪNULL.
--------------------------------------------
2.right join
sqlÓï¾äÈçÏÂ:
select * from A
right join B
on A.aID = B.bID
½á¹ûÈçÏÂ:
aID¡¡¡¡¡¡¡¡¡¡aNum¡¡¡¡¡¡¡¡¡¡bID¡¡¡¡¡¡¡¡¡¡bName
1¡¡¡¡¡¡¡¡¡¡a20050111¡¡¡¡¡¡¡¡1¡¡¡¡¡¡¡¡¡¡2006032401
2¡¡¡¡¡¡¡¡¡¡a20050112¡¡¡¡¡¡¡¡2¡¡¡¡¡¡¡¡¡¡2006032402
3¡¡¡¡¡¡¡¡¡¡a20050113¡¡¡¡¡¡¡¡3¡¡¡¡¡¡¡¡¡¡2006032403
4¡¡¡¡¡¡¡¡¡¡a20050114¡¡¡¡¡¡¡¡4¡¡¡¡¡¡¡¡¡¡2006032404
NULL¡¡¡¡¡¡¡¡¡¡NULL¡¡¡¡¡¡¡¡¡¡8¡¡¡¡¡¡¡¡¡¡2006032408
£¨ËùÓ°ÏìµÄÐÐÊýΪ 5 ÐУ©
½á¹û˵Ã÷:
×Ðϸ¹Û²ìÒ»ÏÂ,¾Í»á·¢ÏÖ,ºÍleft joinµÄ½á¹û¸ÕºÃÏà·´,Õâ´ÎÊÇÒÔÓÒ±í(B)Ϊ»ù´¡µÄ,A±í²»×ãµÄµØ·½ÓÃNULLÌî³ä.
--------------------------------------------
3.inner join
sqlÓï¾äÈçÏÂ:
select * from A
innerjoin B
on A.aID = B.bID
½á¹ûÈçÏÂ:
aID¡¡¡¡¡¡¡¡¡¡aNum¡¡¡¡¡¡¡¡¡¡bID¡¡¡¡¡¡¡¡¡¡bName
1¡¡¡¡¡¡¡¡¡¡a200
Ïà¹ØÎĵµ£º
ÏÂÃæÊÇÖ¸µ¼Îĵµ¡£Çë¸ú×ÅÒ»²½²½µÄ×ö¡£¾ÍÄܳɹ¦Á¬½ÓÉÏsql server 2008
javaÖÐÁ¬½Ósql server 2008µÄ×¢ÒâÊÂÏ
2000£¬2005µÄÊý¾Ý¿âÇý¶¯ÀàµÄд·¨ÊÇ£º
com.microsoft.jdbc.sqlserver.SQLServerDriver
URLµÄд·¨ÊÇ£º¼ÙÉèÊý¾Ý¿âÊÇnews
jdbc:microsoft:sqlserver://localhost:1433;databaseName=news
µ«ÊÇ20 ......
ÎÒʹÓÃdelphiÒ²²»ÊǺܳ¤Ê±¼ä£¬ÓÉÓÚ¾³£ÒªÓõ½SQLÓï¾ä£¬×ܽáÁËһЩDelphiÖÐʹÓÃSQLÓï¾äҪעÒâµÄÊÂÏ¹éÄÉÆðÀ´Ö÷ÒªÓÐһϼ¸Ìõ£º
Ò»¡¢¿Õ¸ñ²»ÒªÂ©£º
ÎÒÃǾ³£ÒªÆ´×°SQLÓï¾ä£¬ÌرðÊÇwhereÌõ¼þ¾ä£¬ÔÚ¸÷¸öÓï¾äÖбðÍüÁËͷβ¼ÓÉϿոñ¡£ÒòΪÔÚÒ»¸öÓï¾äÖÐÎÒÃÇ»á×¢ÒâÓÿոñ·Ö¿ª¹Ø¼ü×Öµ«ÊÇÍùÍùÍüÁËͷβµÄ¿Õ¸ñ¡£ÀýÈ磺
sSQL=' select ......
SQL Server 2005 ²»ÔÊÐíÔ¶³ÌÁ¬½Ó½â¾ö·½·¨
¸Õ¸Õ°²×°µÄÊý¾Ý¿âϵͳ£¬°´ÕÕĬÈϰ²×°µÄ»°£¬ºÜ¿ÉÄÜÔÚ½øÐÐÔ¶³ÌÁ¬½Óʱ±¨´í£¬Í¨³£ÊÇ´íÎó:"ÔÚÁ¬½Óµ½ SQL Server 2005 ʱ£¬
ÔÚĬÈϵÄÉèÖÃÏ SQL Server ²»ÔÊÐí½øÐÐÔ¶³ÌÁ¬½Ó¿ÉÄܻᵼÖ´Ëʧ°Ü¡£
(provider: ÃüÃû¹ÜµÀÌṩ³ÌÐò, error: 40 - ÎÞ·¨´ò¿ªµ½ SQL Server µÄÁ¬½Ó) "ËÑM ......
Sql ServerÖеÄÈÕÆÚÓëʱ¼äº¯Êý
1. µ±Ç°ÏµÍ³ÈÕÆÚ¡¢Ê±¼ä
select getdate()
2. dateadd ÔÚÏòÖ¸¶¨ÈÕÆÚ¼ÓÉÏÒ»¶Îʱ¼äµÄ»ù´¡ÉÏ£¬·µ»ØÐ嵀 datetime Öµ
ÀýÈ磺ÏòÈÕÆÚ¼ÓÉÏ2Ìì
select dateadd(day,2,'2004-10-15') --·µ»Ø£º2004-10-17 00:00:00.000
3. datediff ·µ»Ø¿çÁ½¸öÖ ......
selectÓï¾äÖÐÖ»ÄÜʹÓÃsqlº¯Êý¶Ô×ֶνøÐвÙ×÷£¨Á´½Ósql server£©£¬
select ×Ö¶Î1 from ±í1 where ×Ö¶Î1.IndexOf("ÔÆ")=1;
ÕâÌõÓï¾ä²»¶ÔµÄÔÒòÊÇindexof£¨£©º¯Êý²»ÊÇsqlº¯Êý£¬¸Ä³Ésql¶ÔÓ¦µÄº¯Êý¾Í¿ÉÒÔÁË¡£
left£¨£©ÊÇsqlº¯Êý¡£
select ×Ö¶Î1 from ±í1 where charindex£¨'ÔÆ',×Ö¶Î1£©=1; ×Ö·û´®º¯Êý¶Ô¶þ½øÖÆÊý¾Ý¡¢×Ö·û´®ºÍ ......