Gibt Zeilen zurück, die in der Ergebnismenge für den Abfrageblock vor EXCEPT vorhanden und in der Ergebnismenge für den Abfrageblock nach EXCEPT nicht vorhanden sind.
[ WITH Temporäre_Ansichten ] Haupt-Abfrageblock EXCEPT [ ALL | DISTINCT ] Except-Abfrageblock [ ORDER BY [Ganzzahl | Auswahllistenausdruck-Name ] [ ASC | DESC ], ... ] [ FOR XML XML-Modus ] [ OPTION( Abfragen-Hint, ... ) ]
Abfragen-Hint : MATERIALIZED VIEW OPTIMIZATION Optionswert | FORCE OPTIMIZATION | Optionsname = Optionswert
Haupt-Abfrageblock: Ein Abfrageblock. Weitere Hinweise finden Sie unter Allgemeine Elemente der SQL-Syntax.
Except-Abfrageblock: Ein Abfrageblock. Weitere Hinweise finden Sie unter Allgemeine Elemente der SQL-Syntax.
Optionsname : Bezeichner
Optionswert : Hostvariable (Bezeichner zulässig), Zeichenfolge, Bezeichner oder Zahl
Haupt-Abfrageblock Ein Abfrageblock, mit dem mindestens ein Abfrageblock verglichen wird.
Except-Abfrageblock Ein Abfrageblock rechts von der EXCEPT-Klausel. Das Ergebnis eines Except-Abfrageblocks wird mit dem Ergebnis des Haupt-Abfrageblocks verglichen, um Zeilen zu ermitteln, die nur im Haupt-Abfrageblock vorhanden sind.
EXCEPT-Klausel Wenn im Haupt-Abfrageblock Duplikatzeilen vorhanden sind, die nicht zu Zeilen in dem oder den Except-Abfrageblock/Abfrageblöcken passen, erscheinen die Duplikare im Ergebnis, wenn EXCEPT ALL angegeben ist. Um Duplikate im Ergebnis zu löschen, geben Sie anstelle dessen EXCEPT oder EXCEPT DISTINCT an.
OPTION-Klausel Verwenden Sie diese Klausel, um Hints für das Ausführen der Anweisung anzugeben. Die folgenden Hints werden unterstützt:
Eine Beschreibung dieser Optionen finden Sie bei der OPTIONS-Klausel unter SELECT-Anweisung.
Verwenden Sie die EXCEPT-Klausel, um die Ergebnisse des Haupt-Abfrageblocks mit einem oder mehreren Except-Abfrageblöcken zu vergleichen und nur jene Zeilen zurückzugeben, die im Haupt-Abfrageblock vorhanden sind. Geben Sie EXCEPT oder EXCEPT DISTINCT an, wenn Duplikate im Haupt-Abfrageblock nicht als Duplikate in den Ergebnissen erscheinen sollen. Sonst geben Sie EXCEPT ALL an.
EXCEPT ist identisch mit EXCEPT DISTINCT.
Die Abfrageblöcke müssen jeweils die gleiche Anzahl von Einträgen in der Auswahlliste haben.
Die Anzahl von Zeilen in der Ergebnismenge von EXCEPT ALL entspricht genau dem Unterschied zwischen der Anzahl der Zeilen in den Ergebnismengen der getrennten Abfragen.
Die Ergebnisse von EXCEPT stimmen mit denen von EXCEPT ALL überein, außer dass bei EXCEPT Duplikatzeilen eliminiert werden, bevor der Unterschied zwischen den Ergebnismengen berechnet wird.
Wenn übereinstimmende Elemente in zwei Auswahllisten verschiedene Datentypen umfassen, wählt SQL Anywhere einen Datentyp für die entsprechende Spalte im Ergebnis aus und konvertiert automatisch die Spalten in jedem Abfrageblock. Die erste Abfragenspezifikation von UNION wird verwendet, um die Namen festzulegen, die mit der ORDER BY-Klausel zugeordnet werden sollen.
Die angezeigten Spaltennamen sind dieselben, die auch für den ersten Abfrageblock angezeigt werden. Eine andere Art der Anpassung von Spaltennamen in der Ergebnismenge ist mit der WITH-Klausel für den Abfrageblock möglich.
Erfordert SELECT-Berechtigung für jeden Abfrageblock.
Keine
SQL/2003 EXCEPT DISTINCT ist eine Kernfunktion. EXCEPT ALL ist Merkmal F304.
Ein Beispiel für die Verwendung von EXCEPT finden Sie unter Mengenoperatoren und NULL.
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 |