Etwa in Oracle 8i beitreten

September 12

Etwa in Oracle 8i beitreten

Relationale Oracle-Datenbank verwendet Structured Query Language oder SQL, zu bauen und pflegen von Datenbankstrukturen, Daten ändern und Berichte aus den Daten zu generieren. Da mit anderen Datenbanken, die SQL verwenden, die JOIN-Klausel der SELECT-Anweisung für Oracle, grundlegend wichtig ist, wie es vorübergehend separate Tabellen Form verbindet füllen mehr Datenstrukturen. Oracle-Version 8i angegeben ein Pluszeichen, eine Variation den outer-Join genannt.

Wählen Sie und beitreten

Oracle relationale Datenbanken verwenden SQL SELECT-Anweisung zeigt Listen von Daten, einschließlich Felder in Tabellen und berechneten Ergebnisse. Wählen Sie bietet optionale Klauseln bedingt Informationen extrahieren, Sortieren sie und schaffen Gruppenüberschriften und Summen. Mit der JOIN-Klausel erstellen Sie eine virtuelle Tabelle, durch die Verknüpfung von zwei oder mehr separater Tabellen über gemeinsame Datenfelder. Beispielsweise hat eine Orders-Tabelle eine Bestellnummer, Artikelnummer und gekaufte Menge, aber keine Artikelbeschreibung. Die Beschreibung befindet sich in der Artikeltabelle. Um eine Liste der Bestellungen mit Beschreibungen zu drucken, begleiten Sie die Tabellen Bestellungen und Elemente auf die Artikelnummer. Durch das Verknüpfen von zwei Tabellen haben Sie Zugriff auf die Felder in beiden.

Inner-Join

Die JOIN-Klausel in Oracle 8i SQL verfügt über eine zwei grundlegende Varianten, innere und äußere. Eine innere Verknüpfung fasst Datensätze aus zwei Tabellen, aber wenn eine Tabelle keine Datensätze, die der anderen zu entsprechen hat, enthält die resultierende virtuelle Tabelle keine Datensätze entweder. Eine innere Verknüpfung hat Einträge nur, wo beide Tabellen übereinstimmende Datensätze haben. Beispielsweise hat eine Tabelle mit Kommentare Reihenfolge Felder für Anzahl und Kommentare. Nicht alle Bestellungen haben Kommentare, jedoch; Wenn Sie mit einer inneren Verknüpfung mit Tabelle für die Kommentare die Orders-Tabelle verknüpfen, enthält die virtuelle Tabelle nur Bestellungen mit Kommentaren.

Explizite Outer-Join

Eine äußere Verknüpfung enthält stets Datensätze aus einer der beiden verknüpften Tabellen unabhängig davon, ob der andere übereinstimmende Einträge hat oder nicht. Wenn der Join eine linke äußere Verknüpfung ist, enthält SQL die linke Tabelle; eine Rechte äußere Verknüpfung enthält Datensätze aus der Tabelle auf der rechten Seite. Wenn die SQL SELECT-Anweisung enthält die Worte "LEFT OUTER JOIN" oder "RIGHT OUTER JOIN," nennt man eine explizite Verknüpfung. Die folgende SELECT-Anweisung enthält alle Datensätze, Reihenfolge, einschließlich derjenigen mit Kommentaren:

Wählen Sie orders.order_number, Customer_code, Kommentare von Bestellungen LEFT OUTER JOIN Order_comments ON orders.order_number = order_comments.order_number;

Oracle begann mit dem expliziten outer-Join-Format mit Version 9i ihrer Software.

Implizite Outer-Join

Zusätzlich zu eine explizite Inklusionsverknüpfung hat Oracle 8i eine optionale Syntax, mit dem Sie die Verknüpfung in der WHERE-Klausel zu setzen. In diesem Fall geben Sie eine linke äußere Verknüpfung durch das Pluszeichen links neben einem Gleichheitszeichen setzen; eine Rechte äußere Verknüpfung hat das plus-Symbol auf der rechten Seite. Diese SELECT-Anweisung ist eine linke äußere Verknüpfung zwischen den Tabellen Orders und Ordnung Kommentare als vor, doch die implizite Syntax verwendet:

Wählen Sie orders.order_number, Customer_code, Kommentare von Bestellungen, Order_comments wo orders.order_number += order_comments.order_number;

Obwohl der implizite outer-Join kompakter und einfacher zu schreiben ist, lieber Experten die explizite Methode, da es hält sich noch enger an standard-SQL-Syntax und Unklarheiten in der Join-Vorgang vermeidet.