資源描述:
《sql:join之完全用法》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、SQL:JOIN之完全用法>>教育資源庫 本文概要介紹JOIN的用法,全面講解它的使用規(guī)則方法,并舉例解釋 外聯(lián)接 外聯(lián)接可以是左向外聯(lián)接、右向外聯(lián)接或完整外部聯(lián)接。在FROM子句中指定外聯(lián)接時,可以由下列幾組關(guān)鍵字中的一組指定:LEFTJOIN或LEFTOUTERJOIN?! ∽笙蛲饴?lián)接的結(jié)果集包括LEFTOUTER子句中指定的左表的所有行,而不僅僅是聯(lián)接列所匹配的行。如果左表的某行在右表中沒有匹配行,則在相關(guān)聯(lián)的結(jié)果集行中右表的所有選擇列表列均為空值?! IGHTJOIN或RIGHTOU
2、TERJOIN?! ∮蚁蛲饴?lián)接是左向外聯(lián)接的反向聯(lián)接。將返回右表的所有行。如果右表的某行在左表中沒有匹配行,則將為左表返回空值?! ULLJOIN或FULLOUTERJOIN。 完整外部聯(lián)接返回左表和右表中的所有行。當(dāng)某行在另一個表中沒有匹配行時,則另一個表的選擇列表列包含空值。如果表之間有匹配行,則整個結(jié)果集行包含基表的數(shù)據(jù)值?! H當(dāng)至少有一個同屬于兩表的行符合聯(lián)接條件時,內(nèi)聯(lián)接才返回行。內(nèi)聯(lián)接消除與另一個表中的任何行不匹配的行。而外聯(lián)接會返回FROM子句中提到的至少一個表或視圖的所有行,只
3、要這些行符合任何icrosoft®SQLServer™2000對在FROM子句中指定的外聯(lián)接使用以下SQL-92關(guān)鍵字: LEFTOUTERJOIN或LEFTJOIN RIGHTOUTERJOIN或RIGHTJOIN FULLOUTERJOIN或FULLJOIN SQLServer支持SQL-92外聯(lián)接語法,以及在authorsaLEFTOUTERJOINpublishersp ONa.city=p.city ORDERBYp.pub_nameASC,a.au_lna
4、meASC,a.au_fnameASC 下面是結(jié)果集:au_fnameau_lnamepub_nameReginaldBlotchet-HallsNULLMichelDeFranceNULLInnesdelCastilloNULLAnnDullNULLMarjorieGreenNULLMorningstarGreeneNULLBurtGringlesbyNULLSherylHunterNULLLiviaKarsenNULLCharleneLocksleyNULLStearnsMacFeatherN
5、ULLHeatherMcBaddenNULLMichaelOLearyNULLSylviaPanteleyNULLAlbertRingerNULLAnneRingerNULLMeanderSmithNULLDeanStraightNULLDirkStringerNULLJohnsonauthorsASaRIGHTOUTERJOINpublishersASpONa.city=p.cityORDERBYp.pub_nameASC,a.au_lnameASC,a.au_fnameASC 下面是結(jié)果集:a
6、u_fnameau_lnamepub_nameAbrahamBenAlgodataInfosystemsCherylCarsonAlgodataInfosystemsNULLNULLBinHardleyNULLNULLFiv123下一頁>>>>這篇文章來自..,。eLakesPublishingNULLNULLGGGGNULLNULLLucernePublishingNULLNULLNeonaPublishersNULLNULLScootneyBooks(9rootionalSecurity:ANe
7、(null)(null)FiftyYearsinBuckinghamPalaceKitchens706675IsAngertheEnemy?(null)(null)Lifeediterranean(null)(null)ProlongedDataDeprivation:FourCaseStudies(null)(null)SecretsofSiliconValley(null)(null)SiliconValleyGastronomicTreats(null)(null)StraightTalkAb
8、outputers(null)(null)Sushi,Anyone?(null)(null)TheBusyExecutivesDatabaseGuide(null)(null)TheGourmetMicroBen和CherylCarson)。SQL-92FULLOUTERJOIN運算符指明:不管表中是否有匹配的數(shù)據(jù),結(jié)果將包括兩個表中的所有行?! ∪粢诮Y(jié)果中包括所有和出版商,而不管城市中是否有出版商或者出版商是否住在同一個城市,請使用完整外部聯(lián)接。下面是Transa