Inneres Jucken in SQL Server 2000
Ein innerer Join in SQL Server 2000 kombiniert Zeilen aus zwei Tabellen basierend auf einer übereinstimmenden Bedingung zwischen angegebenen Spalten. Es gibt nur die Zeilen zurück, bei denen in beiden Tabellen einen übereinstimmenden Wert vorhanden ist.
Hier ist eine Aufschlüsselung:
1. Zwei Tabellen beitreten:
- Sie benötigen zwei Tabellen mit verwandten Daten, die Sie kombinieren möchten. Zum Beispiel eine Tabelle "Kunden" und eine "Bestellungen" mit einer gemeinsamen Spalte wie "CustomerID".
2. Die Join -Bedingung:
- Sie geben die Bedingung an, die für die Verbindungszeile erfüllt werden muss. Diese Bedingung beinhaltet typischerweise den Vergleich einer Spalte aus der ersten Tabelle mit einer Spalte aus der zweiten Tabelle.
3. Resultierende Zeilen:
- Der innere Join erzeugt eine neue Ergebnistabelle, die nur die Zeilen enthält, in denen die Join -Bedingung wahr ist. Mit anderen Worten, es enthält nur die Zeilen, die in beiden Tabellen einen übereinstimmenden Wert haben.
Syntax:
`` `SQL
Wählen Sie Spalte1, Spalte2, ...
Aus Tabelle 1
Innere Join -Tabelle 2 auf Join_Condition;
`` `
Beispiel:
Nehmen wir an, Sie haben einen "Kunden" -Tisch und eine "Bestellungen" -Tabelle:
Kunden Tabelle:
| CustomerId | Name |
| --- | --- |
| 1 | John Doe |
| 2 | Jane Doe |
| 3 | David Smith |
Bestellungstabelle:
| Orderid | CustomerId | Produkt |
| --- | --- | --- |
| 101 | 1 | Laptop |
| 102 | 2 | Smartphone |
| 103 | 1 | Tastatur |
Um alle Kunden und ihre Bestellungen mit einem inneren Join zu erhalten:
`` `SQL
Wählen Sie C.Name, O. Orderid, O.Product
Von Kunden c
Innere Join -Bestellungen o auf customerid =o.customerid;
`` `
Ergebnis:
| Name | Orderid | Produkt |
| --- | --- | --- |
| John Doe | 101 | Laptop |
| John Doe | 103 | Tastatur |
| Jane Doe | 102 | Smartphone |
Erläuterung:
- Die Abfrage wählt die "name`" aus der Tabelle "customer" (aliased als `c`) und die ordnen und` product` aus der Tabelle "Bestellungen" (aliased als "o`) aus.
- Die "Inner Join` -Klausel" verbindet die Tabellen mit der Spalte "CustomerID".
- Die Klausel von "On" Gibt die Verknüpfungsbedingung an:`CustomerId =O.Customerid`. Dies stellt sicher, dass nur Zeilen mit passenden `CustomerID' -Werten enthalten sind.
Schlüsselpunkte:
- Innenverbindungen sind die häufigste Art von Join.
- Sie enthalten nur Zeilen, bei denen in beiden Tischen ein Match vorhanden ist.
- Sie können mehrere Tabellen mit mehreren `Inner -Join` -Klauseln verbinden.
Wichtig:
- In SQL Server 2000 ist das Schlüsselwort "Inner Join" optional und kann durch "Join" ersetzt werden.
- Es wird empfohlen, "Inner Join" für Klarheit zu verwenden und Verwirrung mit anderen Arten von Verknüpfungen zu vermeiden (wie linke Verknüpfungen und rechte Verknüpfungen).