Die Unterstützung für die Transact-SQL-Outer-Join-Operatoren *= und =* wird nicht weiterentwickelt und in einer zukünftigen Version entfernt werden.
In Übereinstimmung mit ANSI/ISO SQL-Standards unterstützt SQL Anywhere die Schlüsselwörter LEFT OUTER, RIGHT OUTER und FULL OUTER. Aus Gründen der Kompatibilität mit Adaptive Server Enterprise vor Version 12 unterstützt SQL Anywhere auch die Transact-SQL-Gegenstücke dieser Schlüsselwörter, also *= und =*, falls die Datenbankoption "tsql_outer_joins" auf "On" gesetzt ist. Weitere Hinweise finden Sie unter tsql_outer_joins-Option [Kompatibilität].
Es gibt jedoch Einschränkungen und potenzielle Probleme mit der Semantik von Transact-SQL. Eine ausführliche Beschreibung
von Transact-SQL Outer-Joins finden Sie im Whitepaper Semantics and Compatibility of Transact-SQL Outer Joins, das unter der
folgenden Internetadresse zu finden ist: http://www.sybase.com/detail?id=1017447.
Im Transact-SQL-Dialekt erstellen Sie Outer-Joins, indem Sie eine kommagetrennte Liste von Tabellen in der FROM-Klausel bereitstellen und die Sonderoperatoren *= oder =* in der WHERE-Klausel verwenden. In Adaptive Server Enterprise vor Version 12 muss die Bedingung in der WHERE-Klausel enthalten sein (ON wurde nicht unterstützt).
Wenn Sie Outer-Joins erstellen, darf die Syntax *= nicht mit der Syntax der ON-Klausel gemischt werden. Dies gilt auch für Ansichten, die in der Abfrage referenziert werden.
Der folgende Links-Outer-Join listet alle Kunden auf und findet ihre Bestelldaten (wenn vorhanden):
SELECT GivenName, Surname, OrderDate FROM Customers, SalesOrders WHERE Customers.ID *= SalesOrders.CustomerID ORDER BY OrderDate; |
Diese Anweisung ist gleichwertig zur folgenden Anweisung, in der die ANSI/ISO-Syntax verwendet wird:
SELECT GivenName, Surname, OrderDate FROM Customers LEFT OUTER JOIN SalesOrders ON Customers.ID = SalesOrders.CustomerID ORDER BY OrderDate; |
Einschränkungen bei Transact-SQL-Outer-Joins
Ansichten mit Outer-Joins von Transact-SQL verwenden
Wie NULL Transact-SQL-Joins beeinflusst
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |