Innholdsfortegnelse:
Definisjon - Hva betyr Join?
En sammenkobling er en SQL-operasjon utført for å etablere en forbindelse mellom to eller flere databasetabeller basert på samsvarende kolonner, og derved skape et forhold mellom tabellene. De fleste komplekse spørsmålene i et SQL-databaseadministrasjonssystem involverer sammenføyningskommandoer.
Det er forskjellige typer skjøter. Hvilken tilknytning en programmerer bruker, avgjør hvilke poster spørringen velger. Tre algoritmer jobber bak sammenføyningsoperasjoner: hash-sammenføyning, sortering-fusjonering og nestet sløyfeforbindelse.
Techopedia forklarer Join
Standard sammenføyningstype er den indre sammenføyningen. En indre sammenkobling velger poster fra to tabeller som inneholder samsvarende verdier. Oppføringer som ikke har samsvarende eller vanlige verdier, blir ekskludert fra utgangen. Spørsmålet sammenligner hver rad i den første tabellen med rader i den andre tabellen for å finne rader for å tilfredsstille sammenføyningspredikatet.
For eksempel, hvis en tabell inneholder ansattdetaljer og en annen inneholder lederinformasjon, kan en sammenføyning utføres på medarbeider- og ledertabellene for å vise ansatte som også er ledere. Følgende spørring viser ansatte som er ledere:
VELG * FRA Medarbeider INNER JOIN Manager på Employee.Managerid = Manager.Managerid
En sammenføyning utføres alltid på samsvarende kolonner, som er spesifisert i "PÅ" leddet i spørringen. Den samsvarende kolonnen i dette eksemplet er "Managerid". Siden '=' operatøren brukes, kalles det en equijoin.
En naturlig sammenføyning produserer også den samme utdata, men bruker et "BRUK" -søkkelord i sammenføyningsklausulen. Forespørsel ovenfor kan endres som følger for å indikere en naturlig sammenføyning:
VELG ansatt, leder FRA Medarbeider INNER JOIN Manager USING (Managerid)
Selv om en samsvarende kolonne ikke er spesifisert, utføres fortsatt en sammenføyning mellom to tabeller. Denne typen skjøter er kjent som en kryssforbindelse (noen ganger kalt et kartesisk produkt), som er den enkleste formen for sammenføyning. Fordi en begrensning på nøkkelen ikke er spesifisert, blir hver rad i den første tabellen sammenføyd med alle rader i den andre tabellen. Hvis den første tabellen har to rader og den andre tabellen har tre rader, vil utgangen ha seks rader.
Den ytre sammenføyningen er en annen viktig sammenføyningstype. Ytre går generelt sammen, tar inn alle poster i det ene bordet og matchende poster fra den andre tabellen som utdata. En ytre skjøt kan være enten en venstre ytre skjøt eller høyre ytre skjøt. I en venstre ytre sammenføyning vises alle tabeller i det venstre bordet - selv om de ikke tilfredsstiller samsvarsbetingelsene - og samsvarende rader i høyre tabell i utdataene. I en høyre ytre sammenføyning vises alle rader i høyre bord og matchende rader i venstre tabell som utdata.
I sjeldne tilfeller kan et bord knyttes til seg selv. Dette kalles et selvmedlem.
