PDA

View Full Version : SQL: SpaltenÜberschrift als Variable



WoD
22-06-09, 12:57
Hallo zusammen,

gibt es die Möglichkeit im SQL
die Spalten-Überschrift als Variable
zu definieren. z.B bei rollierenden Abfragen


z.B. Select

sum(case when Monat = month(current date - 1Month ...) as Verbrauch_Vormonat

sum(case when Monat = month(current date - 2Month...) as VorVormonat


nicht Verbrauch_Vormonat als
Überschrift

sondern z.b. as Verbrauch_JHJJMM



Vielen Dank für eure Unterstützung

Dieter Wolff

Fuerchau
22-06-09, 13:01
Bei berechneten Feldern wird automatisch der Feldname als Überschrift gewählt.
Eine andere Chance hat man hier nicht, da "Label" nur auf Tabellen/Sichten festgelegt werden können.

Du könntest dir also eine View per SQL anlegen und dann per "LABEL ON" die Überschrift festlegen.

WoD
22-06-09, 13:32
Hallo Fuerchau,

Hab das schon vermutet , das ne Variable so nicht geht.

Schade

Muss wir wohl den anderen Weg überlegen

Danke

UFK
22-06-09, 20:46
Ich würde es mal mit einer SQL-Stored-Procedure oder User-Defined-SQL-Function probieren, die als Ergebnis eine Tabelle liefert.

Du mußt nur die Zeichenkette der Überschrift in der Prozedur selber bestimmen können.

PS: das Wörtchen "as" habe ich immer weggelassen.

B.Hauser
23-06-09, 06:17
... wenn man schon eine Tabelle oder View braucht, kann man diese auch direkt im Programm dynamisch zusammenklöppeln:


String = 'Create View QTEMP/MyView as +
Select sum(case when Monat = month(current date - 1Month ...)
as Verbrauch_' + MyMonat +
'....';

Exec SQL Execute Immeditate :String;


Birgitta