Työskentely SQL Server Ulompi Liittyy

SQL Server, joskus se on tarpeen hakea, lisäksi vastaavat rivit, vertaansa vailla rivit yhdestä tai molemmat taulukot. Tällaista operaatiota kutsutaan uloimmaksi liittymäksi.

Esimerkit 1 ja 2 osoittavat, ero luonnollinen liittyä ja vastaava outer join. (Kaikki tämän jakson esimerkit käyttävät employeeeeeee_enh-taulukkoa.,)

ESIMERKKI 1

Hanki täydelliset tiedot kaikkien työntekijöiden, mukaan lukien sijainti yksikkönsä, jotka elävät ja toimivat samassa kaupungissa:

tuloksena on:

Esimerkki 1 käyttää natural join näyttää tulosjoukon rivejä. Jos haluat tietää kaikki muut olemassa olevat työntekijöiden asuinpaikat, sinun on käytettävä (vasemmalla) ulompaa liittymää. Tätä kutsutaan left outer join, koska kaikki rivit taulukosta vasemmalla puolella oleva operaattori on palautettu, onko heillä on vastaava rivi taulukossa oikealla., Toisin sanoen, jos ei ole vastaavia rivejä taulukon oikealla puolella, outer join vielä palauttaa rivin taulukon vasemmalla puolella, NULL kussakin sarakkeessa toinen taulukko (ks. Esimerkki 2). Tietokantamoottori käyttää toiminnanharjoittajan vasenta ulompaa liittymää määrittääkseen vasemman ulomman liittymän.

oikea ulkoliitos on samanlainen, mutta se palauttaa kaikki rivit taulukon oikealla symboli. Tietokantamoottori käyttää toiminnanharjoittaja RIGHT OUTER-liittymää oikean ulomman liittymän määrittämiseen.,

ESIMERKKI 2:

Hanki täydelliset tiedot kaikkien työntekijöiden, mukaan lukien sijainti heidän osasto, kaikki kaupungit, jotka ovat joko elävä paikka vain tai molemmat asuvat ja työskentelevät paikka työntekijät:

tuloksena on:

Kuten voit nähdä, kun ei ole vastaava rivi taulukossa oikealla puolella (osasto, tässä tapauksessa), left outer join vielä palauttaa rivit taulukosta vasemmalla puolella (employee_enh), ja sarakkeet muut taulukossa on asuttu NULL-arvoja., Esimerkki 3 näyttää oikean ulomman liitoksen käytön.

ESIMERKKI 3.

Hanki täydelliset tiedot kaikki osastot, samoin kuin kaikki elävät paikoissa niiden työntekijät, kaikissa kaupungeissa, jotka ovat joko sijainti osasto tai elin-ja työympäristö sekä työntekijä:

tuloksena on:

lisäksi vasen ja oikea ulompi liittyy, on myös täysi ulkoliitos, joka on määritelty unionin vasemman ja oikean ulomman liittyy. Toisin sanoen, kaikki rivit molemmista taulukoista ovat edustettuina tulosjoukossa., Jos jossakin taulukossa ei ole vastaavaa riviä, sen sarakkeet palautetaan nollilla arvoilla. Tämä toiminto on määritelty käyttämällä täysin OUTER JOIN-operaattoria.

jokainen ulompi liittymäoperaatio voidaan simuloida käyttäen unionin operaattoria sekä ei ole olemassa-toimintoa. Esimerkki 4 vastaa esimerkkiä vasemmalla ulommalla liitoksella (Esimerkki 2).,

ESIMERKKI 4.

Hanki täydelliset tiedot kaikkien työntekijöiden, mukaan lukien sijainti heidän osasto, kaikki kaupungit, jotka ovat joko elävä paikka vain tai molemmat asuvat ja työskentelevät paikka työntekijät:

ensimmäinen SELECT unionissa määrittää luonnollinen liittyä taulukoita employee_enh ja osasto liittyä sarakkeet kotipaikka ja sijainti. Tämä select statement hakee kaikki kaupungit, jotka ovat samaan aikaan kunkin työntekijän asuinpaikat ja työskentelypaikat., Toinen SELECT unionissa hakee, lisäksi kaikki rivit employee_enh pöytä, jotka eivät vastaa ehto luonnollinen liittyä.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *