Hallo,
Der Korrektheit wegen:
Einen Alias, wie esvalue
in diesem Fall ist, kann man nicht mit WHERE verknüpfen.
Es muss die HAVING-Syntax verwendet werden:
SELECT ... HAVING
valueIS NOT NULL
Der Korrektheit wegen. HAVING gehört zu GROUP BY.
Die weitaus bessere Lösung findest Du in meinem Posting.
Und ja, der Korrektheit wegen ORDER BY COALESCE(<argumentenliste>) ...
Freundliche Grüße
Vinzenz