Comment Puis-Je Utiliser L'Instruction Case De La Colonne Dans Le Groupe Par

Comme indiqué par la question, je suis en train de formuler une requête qui a une instruction case dans la colonne des résultats, et puis je veux inclure cette colonne dans la requête de l'instruction group by. Pour donner un exemple concret, voici tout petit peu de ce que ma requête ressemble:

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

Avant de venir ici, j'ai regardé un peu les sites web, y compris cette une, pour essayer de résoudre mon problème. J'ai essayé d'ajouter un alias après la CASE un mot clé comme est indiqué dans la page web, mais n'ont eu aucune chance. Le message d'erreur que je continuerai à recevoir est la suivante:

[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 

Quelqu'un d'autre a couru dans les questions que je suis en face et a été en mesure d'utiliser un GROUP BY sur les résultats d'une CASE déclaration? Toute aide serait appréciée. Oh, et le DB2 version est un z/instance de système d'exploitation, la version 10 (DSN10015)

OriginalL'auteur butallmj | 2013-11-27