Inner Deltag i SQL Server 2000
En indre sammenføjning i SQL Server 2000 kombinerer rækker fra to tabeller baseret på en matchende tilstand mellem specificerede kolonner. Det returnerer kun de rækker, hvor der er en matchende værdi i begge borde.
Her er en sammenbrud:
1. Deltagelse i to borde:
- Du har brug for to tabeller med relaterede data, som du vil kombinere. For eksempel et `kunders 'bord og et' ordrer 'tabel med en fælles kolonne som' CustomerID '.
2. Tilslutningsbetingelsen:
- Du specificerer den tilstand, der skal være opfyldt for, at rækker skal sammenføjes. Denne tilstand involverer typisk sammenligning af en kolonne fra den første tabel med en kolonne fra den anden tabel.
3. Resulterende rækker:
- Den indre sammenføjning producerer en ny resultattabel, der kun indeholder rækkerne, hvor sammenføjningstilstanden er sand. Med andre ord inkluderer det kun de rækker, der har en matchende værdi i begge borde.
Syntaks:
`` `sql
Vælg kolonne1, kolonne2, ...
Fra tabel1
Indvendig sammenføjning Tabel2 på join_condition;
`` `
Eksempel:
Lad os sige, at du har en 'kunders' bord og en 'ordrer' tabel:
Kunder Tabel:
| CustomerId | Navn |
| --- | --- |
| 1 | John Doe |
| 2 | Jane Doe |
| 3 | David Smith |
ordrer Tabel:
| Ordreid | CustomerId | Produkt |
| --- | --- | --- |
| 101 | 1 | Laptop |
| 102 | 2 | Smartphone |
| 103 | 1 | Tastatur |
For at få alle kunder og deres ordrer ved hjælp af en indre sammenføjning:
`` `sql
Vælg C.Name, O.Orderid, O.Product
Fra kunder c
Indvendige sammenføjningsordrer o på c.customerid =o.customerid;
`` `
Resultat:
| Navn | Ordreid | Produkt |
| --- | --- | --- |
| John Doe | 101 | Laptop |
| John Doe | 103 | Tastatur |
| Jane Doe | 102 | Smartphone |
Forklaring:
- Forespørgslen vælger `Navn'en fra` kunder '-tabellen (aliaseret som `c') og 'orderid' og 'produktet' fra 'Orders' tabel (aliaseret som 'O').
- Klausulen `Inner tilslutning forbinder tabellerne ved hjælp af kolonnen` CustomerID '.
- "On" -klausulen Specificerer sammenføjningstilstanden:"c.customerid =o.customerid". Dette sikrer, at kun rækker med matchende 'CustomerID' -værdier er inkluderet.
Nøglepunkter:
- Indvendige sammenføjninger er den mest almindelige type sammenføjning.
- De inkluderer kun rækker, hvor der er en kamp i begge borde.
- Du kan deltage i flere tabeller ved hjælp af flere `indre sammenføjning 'klausuler.
Vigtigt:
- I SQL Server 2000 er nøgleordet `Indre Join 'valgfrit og kan erstattes med' DOINGE '.
- Det anbefales at bruge `indre sammenføjning 'til klarhed og for at undgå forvirring med andre typer sammenføjninger (som venstre sammenføjninger og højre sammenføjninger).