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

SAP Sybase SQL Anywhere 16.0 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Abfragen und Datenänderung » Joins: Daten aus mehreren Tabellen abrufen » Natürliche Joins

 

Fehler bei der Verwendung von natürlichen Joins

Der NATURAL JOIN-Operator kann Probleme verursachen, indem er Spalten vergleicht, die Sie gar nicht vergleichen wollen. Folgende Abfrage generiert zum Beispiel nicht die gewünschten Ergebnisse:

SELECT *
FROM SalesOrders NATURAL JOIN Customers;

Das Ergebnis dieser Abfrage enthält keine Zeilen. SQL Anywhere erzeugt intern die folgende ON-Klausel:

FROM SalesOrders JOIN Customers
   ON SalesOrders.ID = Customers.ID

Die Spalte "ID" in der Tabelle "SalesOrders" ist eine Kennung für die Bestellung (order). Die Spalte "ID" in der Tabelle "Customers" ist eine Kennung für den Kunden (customer). Für keine der Kennungen wurde eine Übereinstimmung gefunden. Selbst wenn eine Übereinstimmung gefunden würde, wäre sie bedeutungslos.