Wie verwende ich die Spalte "Case Statement" in "Group By"?

Wie in der Frage angegeben, versuche ich, eine Abfrage zu formulieren, die eine case-Anweisung in den Spaltenergebnissen enthält, und dann möchte ich diese Spalte in die group by-Anweisung der Abfrage aufnehmen. Um ein konkretes Beispiel zu geben:

SELECT SOME_TABLE_ALIAS.COLUMN1, OTHER_TABLE_ALIAS.COLUMN2,
CASE
    WHEN SOME_TABLE_ALIAS.COLUMN3 IS NOT NULL THEN 'A'
    ELSE 'B'
END AS CASE_COLUMN
FROM SOME_TABLE SOME_TABLE_ALIAS
... (other table joins and where clauses)
GROUP BY SOME_TABLE_ALIAS.COLUMN1, OTHER_TABLE_ALIAS.COLUMN2, CASE_COLUMN

Bevor ich hierher kam, habe ich einige Websites überprüft, darunterdieses, um mein Problem zu lösen. Ich habe versucht, nach dem einen weiteren Alias ​​hinzuzufügenCASE Stichwort wie wird in der verlinkten Webseite angezeigt, hatte aber kein Glück. Die Fehlermeldung, die ich weiterhin erhalte, lautet wie folgt:

[Error] Script lines: 127-151 ----------------------
 CASE_COLUMN IS NOT VALID IN THE CONTEXT WHERE IT IS USED. SQLCODE=-206, SQLSTATE=42703, DRIVER=3.53.71 

Hat jemand anderes auf die Probleme gestoßen, mit denen ich konfrontiert bin und in der Lage war, eine zu verwenden?GROUP BY auf die Ergebnisse von aCASE Aussage? Jede Hilfe wäre dankbar. Ach ja, und die DB2-Version ist eine z / OS-Instanz, Version 10 (DSN10015).

Antworten auf die Frage(2)

Ihre Antwort auf die Frage