Die Abfrage bewirkt ja, dass bei einem Datensatz immer alle sechs Felder ausgegeben werden, solange mindestes eines einen Wert > 0 hat.
Es sollen aber nur die Felder von den 6 gelistet werden die auch einen Wert > 0 haben.
Man kann keine Abfrage erstellen, bei der die Anzahl der ausgegebenen Felder für einzelne Datensätze unterschiedlich ist.
Musst du denn wissen, wie die jeweiligen Felder mit Wert > 0 heißen oder bist du nur an den Werten interessiert?