Mysql indre sammenføyning

Mysql indre sammenføyning

MySQL er en kjent database avledet fra standard SQL. Det er en av de mest populære databasene der ute. MySQL lar deg utføre CRUD -operasjoner og alle andre store kommandoer som trengs når du administrerer en database. Når du trenger data fra forskjellige tabeller basert på spesifikke forhold, gir MySQL sammen med å håndtere denne typen oppgaver. Denne artikkelen dekker MySQL indre sammenføyning i detalj.

Hva er en indre sammenføyning? En indre sammenføyning er den samme som en enkel sammenføyning. En indre sammenføyning returnerer vanlige poster eller rader fra den medfølgende tilstanden og tabellene. Vi kan bruke noen av disse klausulene, og vi vil fortsatt ha de samme resultatene. La oss se på noen eksempler for å vise deg hvordan du kan bruke indre sammenføyninger i MySQL.

Eksempler

Før vi lærer bruken av indre sammenføyninger, kan vi få resultatet fra to forskjellige tabeller basert på tilstanden (e) ved å bruke SELECT -setningen og WHERE. I det følgende eksemplet er 'bøker' og 'forfattere' to forskjellige tabeller i en database.

Desc -bøker; Desc -forfattere;

I tabellen "Bøker" har vi den utenlandske forfatteren_id -nøkkelen fra 'Authors' -tabellen.

For å få alle kolonnene fra begge tabellene, setter vi bøker.forfatter_id = forfattere.forfatter_id. SELECT -spørringen vil være som følger:

Velg * fra bøker, forfattere
Hvor bøker.forfatter_id = forfattere.forfatter_id;

Som du kan se på bildet over, har vi skaffet alle kolonnene fra begge tabellene. Ofte ser det ikke bra ut å ha alle kolonnene, selv om de ikke er nødvendig. Så hvis du bare vil skaffe visse kolonner fra begge tabellene, må du nevne kolonnenavnene i SELECT -setningen, som følger:

Velg bøker.boknavn, bøker.Kategori, forfattere.forfatter_fname, forfattere.forfatter_lname
Fra bøker, forfattere
Hvor bøker.forfatter_id = forfattere.forfatter_id;

Som du kan se, har vi en ren og klar utgang av de fire medfølgende kolonnene fra begge tabellene.

Nå vil vi utføre den samme oppgaven ved å bruke den indre sammenføyningsklausulen.

For å bli med i to tabeller ved å bruke den indre sammenføyningsklausulen, vil Select -spørringen være som følger:

Velg bøker.boknavn, bøker.Kategori, forfattere.forfatter_fname, forfattere.forfatter_lname
Fra bøker indre sammenføyere forfattere
På bøker.forfatter_id = forfattere.forfatter_id;

Som du kan se på skjermbildet over, har vi oppnådd den samme utgangen, men ved å bruke den indre sammenkoblingsklausulen denne gangen.

Som nevnt tidligere, er den indre sammenkoblingsklausulen den samme som en enkel sammenføyningsklausul. Dette betyr at vi kan bruke sammenføyningsklausulen i stedet for den indre sammenføyningsklausulen og fremdeles oppnå de samme resultatene. SELECT -spørringen med Simple Join -leddet ville være som følger:

Velg bøker.boknavn, bøker.Kategori, forfattere.forfatter_fname, forfattere.forfatter_lname
Fra bøker blir med forfattere
På bøker.forfatter_id = forfattere.forfatter_id;

Som du kan se på bildet over, har vi oppnådd de samme resultatene. Dette viser deg at den enkle sammenføyningen og indre sammenføyningene er de samme. Du kan få de samme resultatene ved å bruke noen av disse sammenføyningene.

Konseptet med den indre sammenføyningen stopper ikke her. I tidligere eksempler brukte vi sammenføyningen på to tabeller på grunnlag av forfatteren_id -nøkkelen. Siden vi vet at Author_id -nøkkelen allerede er den utenlandske nøkkelen i "Books" -tabellen, kan vi forkorte syntaksen ved å bruke bruksbestemmelsen med Join. Syntaksen for bruk av bruksklausulen med sammenføyningsklausulen er som følger:

Velg bøker.boknavn, bøker.Kategori, forfattere.forfatter_fname, forfattere.forfatter_lname
Fra bøker blir med forfattere
Bruker (forfatter_id);

Det kan observeres at denne spørringen har generert de samme resultatene med bruk av klausulen.

Tilsvarende kan vi bruke en betingelse sammen med å bruke sammenføyningen mellom to tabeller ved å bruke WHERE -leddet. For eksempel, for å få de samme fire kolonnene fra begge tabellene der forfatterens etternavn er lik 'Hill', vil spørringen for å få slik utdata være:

Velg bøker.boknavn, bøker.Kategori, forfattere.forfatter_fname, forfattere.forfatter_lname
Fra bøker blir med forfattere
Bruker (forfatter_id)
Hvor forfattere.forfatter_lName = 'Hill';

Som du ser på bildet over, skaffet vi oss bare to rader der etternavnet til forfatteren er 'Hill.'

Så nå har du sett noen eksempler på de forskjellige måtene å bruke en indre sammenføyning for å få de resultatene du ønsker i MySQL.

Konklusjon

I denne artikkelen prøvde vi et par forskjellige eksempler på å bruke den indre sammenføyningen for å gi en mer fullstendig forståelse av konseptet. Du lærte også hvordan du bruker bruk og hvor klausuler med den indre sammenføyningen, samt hvordan du får de nødvendige resultatene i MySQL. For mer nyttig innhold som dette, fortsett å besøke nettstedet vårt, Linuxhint.com.