Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Daten abfragen und ändern » Joins: Daten aus mehreren Tabellen abrufen » Spezielle Joins

 

Joins mit abgeleiteten Tabellen

Mit abgeleiteten Tabellen können Sie Abfragen innerhalb einer FROM-Klausel verschachteln. Mit abgeleiteten Tabellen können Sie Gruppen gruppieren oder einen Join für eine Gruppe aufbauen, ohne eine separate Ansicht oder Tabelle erstellen und sie verknüpfen zu müssen

Im folgenden Beispiel erstellt die innere SELECT-Anweisung (in Klammern gesetzt) eine abgeleitete Tabelle, die nach "customer ID"-Werten gruppiert ist. Die äußere SELECT-Anweisung weist dieser Tabelle den Korrelationsnamen "sales_order_counts" zu und verbindet sie über eine Join-Bedingung mit der Tabelle "Customers".

SELECT Surname, GivenName, number_of_orders
FROM Customers JOIN
   (  SELECT CustomerID, COUNT(*)
      FROM SalesOrders
      GROUP BY CustomerID  )
   AS sales_order_counts ( CustomerID, number_of_orders )
   ON ( Customers.ID = sales_order_counts.CustomerID )
WHERE number_of_orders > 3;

Das Ergebnis ist eine Tabelle der Namen jener Kunden, die mehr als drei Bestellungen aufgegeben haben sowie der Anzahl der aufgegebenen Bestellungen.

Eine Beschreibung von Schlüssel-Joins abgeleiteter Tabellen finden Sie unter Schlüssel-Joins von Ansichten und abgeleiteten Tabellen.

Eine Beschreibung von natürlichen Joins abgeleiteter Tabellen finden Sie unter Natürliche Joins von Ansichten und abgeleiteten Tabellen.

Eine Beschreibung von Outer-Joins abgeleiteter Tabellen finden Sie unter Outer-Joins von Ansichten und abgeleiteten Tabellen.