Problembehandlung von GROUP BY-Fehlern
In der folgenden Tabelle wird eine Liste von GROUP BY-Fehlermeldungen und Lösungsvorschlägen bereitgestellt.
Fehlernummer |
Fehlermeldung |
So beheben Sie den Fehler |
---|---|---|
102 |
Falsche Syntax in der Nähe von '.' |
Schreiben Sie die Abfrage neu, sodass die Gruppierungssätze in der GROUP BY-Klausel als Teil einer expliziten GROUPING SETS-Liste aufgeführt werden. GROUP BY C1, (C2,…, Cn) löst z. B. diesen Fehler aus. Schreiben Sie die Abfrage als GROUP BY C1, GROUPING SETS( (C2,…, Cn) ) oder GROUP BY C1, C2,…, Cn. |
130 |
Kann keine Aggregatfunktion auf einem Ausdruck ausführen, der ein Aggregat oder eine Unterabfrage enthält. |
Schreiben Sie die Abfrage neu, sodass ein Gruppierungsfunktionsaggregat oder eine Unterabfrage nicht als Argument einer anderen Gruppierungsfunktion oder eines Aggregats erscheint. |
147 |
Ein Aggregat erscheint u. U. nur in der WHERE-Klausel, wenn es in einer Unterabfrage in einer HAVING-Klausel oder einer ausgewählten Liste enthalten ist und die aggregierte Spalte ein äußerer Verweis ist. |
Entfernen Sie die Gruppierungsfunktion oder das Aggregat aus der WHERE-Klausel. |
157 |
Ein Aggregat wird möglicherweise nicht in der festgelegten Liste einer UPDATE-Anweisung angezeigt. |
Entfernen Sie die Gruppierungsfunktion oder das Aggregat aus der festgelegten Liste einer UPDATE-Anweisung. |
158 |
Ein Aggregat wird möglicherweise nicht in der OUTPUT-Klausel angezeigt. |
Entfernen Sie die Gruppierungsfunktion oder das Aggregat aus der OUTPUT-Klausel. |
162 |
Ungültiger Ausdruck in der TOP-Klausel. |
Entfernen Sie die Gruppierungsfunktion oder das Aggregat aus der TOP-Klausel. |
174 |
Die GROUPING-Funktion erfordert 1 Argument. |
Ändern Sie die Argumentliste für die GROUPING ()-Funktion, sodass genau 1 Argument vorhanden ist. |
175 |
Ein Aggregat wird möglicherweise nicht in einem berechneten Spaltenausdruck oder einer CHECK-Einschränkung angezeigt. |
Entfernen Sie die Gruppierungsfunktion oder das Aggregat für berechnete Spalten und CHECK-Einschränkungen in der DDL-Anweisung. |
189 |
Die GROUPING_ID-Funktion erfordert 0 bis 32 Argumente. |
Reduzieren Sie die Anzahl von Argumenten für die GROUPING_ID ()-Funktion auf 32 oder weniger. |
1015 |
Ein Aggregat erscheint nur in einer ON-Klausel, wenn es in einer Unterabfrage in einer HAVING-Klausel oder einer ausgewählten Liste enthalten ist und die aggregierte Spalte ein äußerer Verweis ist. |
Entfernen Sie die Gruppierungsfunktion oder das Aggregat aus der ON-Klausel. |
1028 |
Die Optionen CUBE, ROLLUP und GROUPING SETS werden nicht in einer GROUP BY ALL-Klausel zugelassen. |
Schreiben Sie die Abfrage neu, sodass die GROUP BY ALL-Option nicht mit den Schlüsselwörtern GROUPING SETS, CUBE, ROLLUP, WITH CUBE oder WITH ROLLUP angegeben wird. |
4101 |
Aggregate auf der rechten Seite eines APPLY können nicht auf Spalten auf der linken Seite verweisen. |
Entfernen Sie die Gruppierungsfunktion oder das Aggregat von der rechten Seite der APPLY-Klausel. |
4113 |
GROUPING | GROUPING_ID ist keine gültige Fenstertechnikfunktion und kann nicht mit der OVER-Klausel verwendet werden. |
Schreiben Sie die Abfrage neu, sodass die Funktion GROUPING () oder GROUPING_ID () nicht mit einer OVER-Klausel verwendet wird. |
4142 |
Aggregate werden nicht in der RECEIVE-Liste zugelassen. |
Entfernen Sie die Gruppierungsfunktion oder das Aggregat aus der RECEIVE-Liste. |
5310 |
Aggregate werden nicht in der VALUES-Liste einer INSERT-Anweisung zugelassen. |
Entfernen Sie die Gruppierungsfunktion oder das Aggregat aus der VALUES-Liste einer INSERT-Anweisung. |
8161 |
Das Argument [n] der [GROUPING | GROUPING_ID]-Funktion stimmt mit keinem der Ausdrücke in der GROUP BY-Klausel überein. |
Stellen Sie sicher, dass jedes Argument der GROUPING-Funktion oder der GROUPING_ID-Funktion mit einem Gruppierungselement in der GROUP BY-Klausel übereinstimmt und alle Argumente der GROUPING-Funktion oder GROUPING_ID-Funktion denselben Bereich haben. Im folgenden Fehler führt der Verweis auf die Tabelle T (aus der Hauptabfrage) in der Unterabfrage zu einem Fehler.
|
8661 |
Der gruppierte Index <indexname> in der Sicht <viewname> kann nicht erstellt werden, da der Indexschlüssel Spalten enthält, die nicht in der GROUP BY-Klausel enthalten sind. Erwägen Sie, Spalten auszuschließen, die nicht in der GROUP BY-Klausel des Indexschlüssels enthalten sind. |
Sie können keine indizierte Sicht erstellen, wenn die Sichtdefinition eine GROUP BY-Klausel enthält, die nur das Element (), Gesamtsumme, umfasst. |
10119 |
Der gruppierte Index <indexname> in der Sicht <viewname> kann nicht erstellt werden, da er einen CUBE-, ROLLUP- oder GROUPING SETS-Operator enthält. Erwägen Sie, diese Sicht nicht zu indizieren. |
Eine indizierte Sicht kann nicht erstellt werden, wenn die Sichtdefinition eine allgemeine GROUP BY-Klausel enthält. |
10702 |
Die Optionen WITH CUBE und WITH ROLLUP sind mit einer ROLLUP-, CUBE- oder GROUPING SETS-Spezifikation nicht zulässig. |
Schreiben Sie die Abfrage neu, sodass keine Kombination der Nicht-ISO WITH CUBE oder WITH ROLLUP-Schlüsselwörter und der ISO-kompatiblen GROUPING SETS-, CUBE- oder ROLLUP-Schlüsselwörter vorliegt. |
10703 |
Zu viele Gruppierungssätze. Es können maximal 4096 Werte angegeben werden. |
Reduzieren Sie die Anzahl der Gruppierungssätze in einer allgemeinen GROUP BY-Klausel auf 4096 oder weniger. |
10706 |
Zu viele Ausdrücke werden in der GROUP BY-Klausel angegeben. Die maximale Anzahl ist 32, wenn Gruppierungssätze angegeben werden. |
Reduzieren Sie die unterschiedlichen Gruppierungselemente in einer allgemeinen GROUP BY-Klausel auf 32 oder weniger. |
10708 |
Die CUBE ()- und ROLLUP ()-Gruppierungskonstrukte werden nicht im aktuellen Kompatibilitätsmodus zugelassen. Sie werden nur in Modus 100 oder höher zugelassen. |
Sie können keinen CUBE () und ROLLUP () in Kompatibilitätsmodus 90 verwenden. Verwenden Sie die WITH CUBE-, WITH ROLLUP- oder GROUPING SETS-Syntax. |