I SQL, a bli med brukes til å sammenligne og kombinere - bokstavelig talt bli med - og returnere bestemte rader med data fra to eller flere tabeller i en database. en indre sammenføyning finner og returnerer matchende data fra tabeller, mens en ytre sammenføyning finner og returnerer matchende data og noen forskjellige data fra tabeller.
En indre sammenføyning fokuserer på commonality mellom to bord. Når du bruker en indre tilkobling, må det være minst noen matchende data mellom to (eller flere) tabeller som sammenlignes. En indre sammenlegger søker tabeller for samsvarende eller overlappende data. Ved å finne den, kombinerer den indre kombinasjonen og returnerer informasjonen til et nytt bord.
La oss vurdere et felles scenario med to tabeller: produktpriser og mengder. Den vanlige informasjonen i de to tabellene er produktnavn, så det er den logiske kolonnen for å bli med i tabellene på. Det er noen produkter som er vanlige i de to tabellene; andre er unike for ett av bordene og har ikke en kamp i den andre tabellen.
En indre fest på Produkter returnerer informasjon om bare de produktene som er vanlige i begge tabellene.
En ytre sammenføyning returnerer et sett med poster (eller rader) som inkluderer hva en indre sammenføyning ville returnere, men inkluderer også andre rader som ingen tilsvarende kamp er funnet i den andre tabellen.
Det er tre typer ytre sammenhenger:
Hver av disse ytre sammenhenger refererer til den delen av dataene som sammenlignes, kombineres og returneres. Noen ganger vil nuller bli produsert i denne prosessen, da noen data deles mens andre data ikke er.
En venstre ytre sammenføyning returnerer alle dataene i Tabell 1 og alle de delte dataene (den indre delen av Venn-diagrammet), men bare de tilsvarende dataene fra Tabell 2, som er den rette sammenføyningen.
I vår eksempeldatabase finnes det to produkter - appelsiner og tomater - på "venstre" (prisene bord) som ikke har en tilsvarende oppføring på "høyre" (kvantitetstabellen). I et venstre sammenføyning er disse radene inkludert i resultatsettet med en NULL i kolonnen Quantity. De andre radene i resultatet er de samme som det indre festet.
En høyre ytre sammenføyning returnerer tabell 2-data og alle de delte dataene, men bare tilsvarende data fra tabell 1, som er den venstre deltakelsen.
I likhet med det venstre samlingseksempelet, inneholder utgangen av en høyre ytre sammenføyning alle rader av det indre festet og to rader - brokkoli og squash - fra 'høyre' (mengder bord) som ikke har tilsvarende oppføringer til venstre.
En full ytre sammenføyning, eller full sammenføyning, som er ikke støttet av det populære MySQL databasebehandlingssystemet, kombinerer og returnerer alle data fra to eller flere tabeller, uavhengig av om det er delt informasjon. Tenk på en fullstendig tilknytning som bare å duplisere all spesifisert informasjon, men i ett bord, i stedet for flere tabeller. Hvor matchende data mangler, vil nuller bli produsert.
Dette er bare det grunnleggende, men mange ting kan gjøres med tilmeldinger. Det er til og med sammenkomster som kan utelukke andre tilmeldinger!
Denne videoen forklarer forskjellen mellom ulike typer tilkoblinger. Det er cued opp til å begynne på det punktet hvor diskusjonen om tilmeldinger begynner.