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

SQL Anywhere 12.0.1 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Abfrage und Änderung von Daten » Joins: Daten aus mehreren Tabellen abrufen » Spezielle Joins

 

Joins, die abgeleitete Tabellen verwenden

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.

 Siehe auch