Zum Inhalt springen

Mehrere Selects untereinander?


hammerle

Empfohlene Beiträge

Hi,

Ich bin noch ein PL/SQL Anfänger und habe folgendes Problem:

Das Script unten funktioniert und gibt mir schön eine Zeile raus mit allen Angaben die ich brauche.

Jetzt brauche ich das ganze noch 16x mit anderen Werten bei der where Abfrage : wabe='01' and (Hwgr='05' or hwgr='12' or Hwgr='25')

Und wie bekomme ich oben die 16 verschiedenen selects untereinander?

Vielen Dank schon einmal für die Hilfe!

select 11 as veg,a11.Monat_&monat,b11.Monat_&monat,(((100/a11.Monat_&monat)*b11.Monat_&monat)-100) Veraenderung,

a11.aufgelaufen,b11.aufgelaufen,(((100/a11.aufgelaufen)*b11.aufgelaufen)-100) Veraenderung,

c11.rmpf_aufgel_vor, (d11.aufgelalt + e11.aufgelneu) as Rumpf_alt_&jahr, (f11.aufgelalt + g11.aufgelneu) as Rumpf_neu_&jahr

,(((100/(d11.aufgelalt + e11.aufgelneu))*(f11.aufgelalt + g11.aufgelneu))-100) Veraenderung

from

(select wabe,sum(vk&monat) as Monat_&monat,

decode(&monat,

01,

sum(vk01),

02,

(sum(vk01) + sum(vk02)),

03,

(sum(vk01) + sum(vk02) + sum(vk03)),

04,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04)),

05,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05)),

06,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06)),

07,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07)),

08,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08)),

09,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09)),

10,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10)),

11,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10) + sum(vk11)),

12,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10) + sum(vk11) + sum(vk12))

) as aufgelaufen

from t154wast t where jahr=&jahr and stufe=' ' and wabe='01' and (Hwgr='05' or hwgr='12' or Hwgr='25')

group by wabe

)a11,

(select wabe,sum(vk&monat) as Monat_&monat,

decode(&monat,

01,

sum(vk01),

02,

(sum(vk01) + sum(vk02)),

03,

(sum(vk01) + sum(vk02) + sum(vk03)),

04,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04)),

05,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05)),

06,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06)),

07,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07)),

08,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08)),

09,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09)),

10,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10)),

11,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10) + sum(vk11)),

12,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10) + sum(vk11) + sum(vk12))

) as aufgelaufen

from t154wast t where jahr=&jahr + 1 and stufe=' ' and wabe='01' and (Hwgr='05' or hwgr='12' or Hwgr='25')

group by wabe

)b11,

(select wabe, sum((vk01) + (vk02) + (vk03) + (vk04) + (vk05) + (vk06)) as rmpf_aufgel_vor

from t154wast t where jahr=&jahr + 1 and stufe=' ' and wabe='01' and (Hwgr='05' or hwgr='12' or Hwgr='25')

group by wabe

)c11,

(select wabe,sum(vk&monat) as Monat_&monat,

decode(&monat,

07,

sum(vk07),

08,

(sum(vk07) + sum(vk08)),

09,

(sum(vk07) + sum(vk08) + sum(vk09)),

10,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10)),

11,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10) +

sum(vk11)),

12,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10) +

sum(vk11) + sum(vk12))

) as aufgelalt

from t154wast t where jahr=&jahr and stufe=' ' and wabe='01' and (Hwgr='05' or hwgr='12' or Hwgr='25')

group by wabe

)d11,

(select wabe,sum(vk&monat) as Monat_&monat,

decode(&monat,

01,

sum(vk01),

02,

(sum(vk01) + sum(vk02)),

03,

(sum(vk01) + sum(vk02) + sum(vk03)),

04,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04)),

05,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05)),

06,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06)),

07,

(0),

08,

(0),

09,

(0),

10,

(0),

11,

(0),

(0),

12,

(0)

) as aufgelneu

from t154wast t where jahr=&jahr and stufe=' ' and wabe='01' and (Hwgr='05' or hwgr='12' or Hwgr='25')

group by wabe

) e11,

(select wabe,sum(vk&monat) as Monat_&monat,

decode(&monat,

07,

sum(vk07),

08,

(sum(vk07) + sum(vk08)),

09,

(sum(vk07) + sum(vk08) + sum(vk09)),

10,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10)),

11,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10) +

sum(vk11)),

12,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10) +

sum(vk11) + sum(vk12))

) as aufgelalt

from t154wast t where jahr=&jahr+1 and stufe=' ' and wabe='01' and (Hwgr='05' or hwgr='12' or Hwgr='25')

group by wabe

)f11,

(select wabe,sum(vk&monat) as Monat_&monat,

decode(&monat,

01,

sum(vk01),

02,

(sum(vk01) + sum(vk02)),

03,

(sum(vk01) + sum(vk02) + sum(vk03)),

04,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04)),

05,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05)),

06,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06)),

07,

(0),

08,

(0),

09,

(0),

10,

(0),

11,

(0),

(0),

12,

(0)

) as aufgelneu

from t154wast t where jahr=&jahr+1 and stufe=' ' and wabe='01' and (Hwgr='05' or hwgr='12' or Hwgr='25')

group by wabe

) g11

Link zu diesem Kommentar
Auf anderen Seiten teilen

Bitte verwende die Code-Tags, da Deine Sachen nicht wirklich lesbar sind

Und wie bekomme ich oben die 16 verschiedenen selects untereinander?

Ohne Deine Selects jetzt einzeln anzuschauen, solltest Du eine Union-Abfrage verwenden, wenn Du mehrere Selects zu einer Ergebnismenge verbinden willst. Du musst nur auf die entsprechenden Feldbezeichner achten

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi Flashpixx,

Ich habe das jetzt mal so versucht was leider nicht klappt :(

Jetzt meint er "From sei nicht an der erwarteten Stelle"

select 11 as veg,

a11.Monat_ &monat,

b11.Monat_ &monat,

(((100 / a11.Monat_ &monat) * b11.Monat_ &monat) - 100) Veraenderung,

a11.aufgelaufen,

b11.aufgelaufen,

(((100 / a11.aufgelaufen) * b11.aufgelaufen) - 100) Veraenderung,

c11.rmpf_aufgel_vor,

(d11.aufgelalt + e11.aufgelneu) as Rumpf_alt_ &jahr,

(f11.aufgelalt + g11.aufgelneu) as Rumpf_neu_ &jahr,

(((100 / (d11.aufgelalt + e11.aufgelneu)) *

(f11.aufgelalt + g11.aufgelneu)) - 100) Veraenderung

union all

select 12 as veg,

a12.Monat_ &monat,

b12.Monat_ &monat,

(((100 / a11.Monat_ &monat) * b12.Monat_ &monat) - 100) Veraenderung,

a12.aufgelaufen,

b12.aufgelaufen,

(((100 / a12.aufgelaufen) * b12.aufgelaufen) - 100) Veraenderung,

c12.rmpf_aufgel_vor,

(d12.aufgelalt + e12.aufgelneu) as Rumpf_alt_ &jahr,

(f12.aufgelalt + g12.aufgelneu) as Rumpf_neu_ &jahr,

(((100 / (d12.aufgelalt + e12.aufgelneu)) *

(f12.aufgelalt + g12.aufgelneu)) - 100) Veraenderung

from (select wabe,

sum(vk &monat) as Monat_ &monat,

decode(&monat,

01,

sum(vk01),

02,

(sum(vk01) + sum(vk02)),

03,

(sum(vk01) + sum(vk02) + sum(vk03)),

04,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04)),

05,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05)),

06,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06)),

07,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07)),

08,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08)),

09,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09)),

10,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10)),

11,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10) + sum(vk11)),

12,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10) + sum(vk11) + sum(vk12))

) as aufgelaufen

from t154wast t

where jahr = &jahr

and stufe = ' '

and wabe = '01'

and (Hwgr = '05' or hwgr = '12' or Hwgr = '25')

group by wabe) a11,

(select wabe,

sum(vk &monat) as Monat_ &monat,

decode(&monat,

01,

sum(vk01),

02,

(sum(vk01) + sum(vk02)),

03,

(sum(vk01) + sum(vk02) + sum(vk03)),

04,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04)),

05,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05)),

06,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06)),

07,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07)),

08,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08)),

09,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09)),

10,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10)),

11,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10) + sum(vk11)),

12,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10) + sum(vk11) + sum(vk12))

) as aufgelaufen

from t154wast t

where jahr = &jahr + 1

and stufe = ' '

and wabe = '01'

and (Hwgr = '05' or hwgr = '12' or Hwgr = '25')

group by wabe) b11,

(select wabe,

sum((vk01) + (vk02) + (vk03) + (vk04) + (vk05) + (vk06)) as rmpf_aufgel_vor

from t154wast t

where jahr = &jahr + 1

and stufe = ' '

and wabe = '01'

and (Hwgr = '05' or hwgr = '12' or Hwgr = '25')

group by wabe) c11,

(select wabe,

sum(vk &monat) as Monat_ &monat,

decode(&monat,

07,

sum(vk07),

08,

(sum(vk07) + sum(vk08)),

09,

(sum(vk07) + sum(vk08) + sum(vk09)),

10,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10)),

11,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10) +

sum(vk11)),

12,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10) +

sum(vk11) + sum(vk12))

) as aufgelalt

from t154wast t

where jahr = &jahr

and stufe = ' '

and wabe = '01'

and (Hwgr = '05' or hwgr = '12' or Hwgr = '25')

group by wabe) d11,

(select wabe,

sum(vk &monat) as Monat_ &monat,

decode(&monat,

01,

sum(vk01),

02,

(sum(vk01) + sum(vk02)),

03,

(sum(vk01) + sum(vk02) + sum(vk03)),

04,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04)),

05,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05)),

06,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06)),

07,

(0),

08,

(0),

09,

(0),

10,

(0),

11,

(0),

(0),

12,

(0)

) as aufgelneu

from t154wast t

where jahr = &jahr

and stufe = ' '

and wabe = '01'

and (Hwgr = '05' or hwgr = '12' or Hwgr = '25')

group by wabe) e11,

(select wabe,

sum(vk &monat) as Monat_ &monat,

decode(&monat,

07,

sum(vk07),

08,

(sum(vk07) + sum(vk08)),

09,

(sum(vk07) + sum(vk08) + sum(vk09)),

10,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10)),

11,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10) +

sum(vk11)),

12,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10) +

sum(vk11) + sum(vk12))

) as aufgelalt

from t154wast t

where jahr = &jahr + 1

and stufe = ' '

and wabe = '01'

and (Hwgr = '05' or hwgr = '12' or Hwgr = '25')

group by wabe) f11,

(select wabe,

sum(vk &monat) as Monat_ &monat,

decode(&monat,

01,

sum(vk01),

02,

(sum(vk01) + sum(vk02)),

03,

(sum(vk01) + sum(vk02) + sum(vk03)),

04,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04)),

05,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05)),

06,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06)),

07,

(0),

08,

(0),

09,

(0),

10,

(0),

11,

(0),

(0),

12,

(0)

) as aufgelneu

from t154wast t

where jahr = &jahr + 1

and stufe = ' '

and wabe = '01'

and (Hwgr = '05' or hwgr = '12' or Hwgr = '25')

group by wabe) g11

from (select wabe,

sum(vk &monat) as Monat_ &monat,

decode(&monat,

01,

sum(vk01),

02,

(sum(vk01) + sum(vk02)),

03,

(sum(vk01) + sum(vk02) + sum(vk03)),

04,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04)),

05,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05)),

06,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06)),

07,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07)),

08,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08)),

09,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09)),

10,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10)),

12,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10) + sum(vk12)),

12,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10) + sum(vk12) + sum(vk12))

) as aufgelaufen

from t154wast t

where jahr = &jahr

and stufe = ' '

and wabe = '01'

and (Hwgr = '01' or hwgr = '02' or Hwgr = '03' or hwgr = '04' or

Hwgr = '06' or hwgr = '07' or Hwgr = '08' or hwgr = '09' or

Hwgr = '10' or hwgr = '11' or Hwgr = '26' or hwgr = '29' or

hwgr = '27' or hwgr = '28')

group by wabe) a12,

(select wabe,

sum(vk &monat) as Monat_ &monat,

decode(&monat,

01,

sum(vk01),

02,

(sum(vk01) + sum(vk02)),

03,

(sum(vk01) + sum(vk02) + sum(vk03)),

04,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04)),

05,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05)),

06,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06)),

07,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07)),

08,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08)),

09,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09)),

10,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10)),

12,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10) + sum(vk12)),

12,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06) + sum(vk07) + sum(vk08) +

sum(vk09) + sum(vk10) + sum(vk12) + sum(vk12))

) as aufgelaufen

from t154wast t

where jahr = &jahr + 1

and stufe = ' '

and wabe = '01'

and (Hwgr = '01' or hwgr = '02' or Hwgr = '03' or hwgr = '04' or

Hwgr = '06' or hwgr = '07' or Hwgr = '08' or hwgr = '09' or

Hwgr = '10' or hwgr = '11' or Hwgr = '26' or hwgr = '29' or

hwgr = '27' or hwgr = '28')

group by wabe) b12,

(select wabe,

sum((vk01) + (vk02) + (vk03) + (vk04) + (vk05) + (vk06)) as rmpf_aufgel_vor

from t154wast t

where jahr = &jahr + 1

and stufe = ' '

and wabe = '01'

and (Hwgr = '01' or hwgr = '02' or Hwgr = '03' or hwgr = '04' or

Hwgr = '06' or hwgr = '07' or Hwgr = '08' or hwgr = '09' or

Hwgr = '10' or hwgr = '11' or Hwgr = '26' or hwgr = '29' or

hwgr = '27' or hwgr = '28')

group by wabe) c12,

(select wabe,

sum(vk &monat) as Monat_ &monat,

decode(&monat,

07,

sum(vk07),

08,

(sum(vk07) + sum(vk08)),

09,

(sum(vk07) + sum(vk08) + sum(vk09)),

10,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10)),

12,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10) +

sum(vk12)),

12,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10) +

sum(vk12) + sum(vk12))

) as aufgelalt

from t154wast t

where jahr = &jahr

and stufe = ' '

and wabe = '01'

and (Hwgr = '01' or hwgr = '02' or Hwgr = '03' or hwgr = '04' or

Hwgr = '06' or hwgr = '07' or Hwgr = '08' or hwgr = '09' or

Hwgr = '10' or hwgr = '11' or Hwgr = '26' or hwgr = '29' or

hwgr = '27' or hwgr = '28')

group by wabe) d12,

(select wabe,

sum(vk &monat) as Monat_ &monat,

decode(&monat,

01,

sum(vk01),

02,

(sum(vk01) + sum(vk02)),

03,

(sum(vk01) + sum(vk02) + sum(vk03)),

04,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04)),

05,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05)),

06,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06)),

07,

(0),

08,

(0),

09,

(0),

10,

(0),

12,

(0),

(0),

12,

(0)

) as aufgelneu

from t154wast t

where jahr = &jahr

and stufe = ' '

and wabe = '01'

and (Hwgr = '01' or hwgr = '02' or Hwgr = '03' or hwgr = '04' or

Hwgr = '06' or hwgr = '07' or Hwgr = '08' or hwgr = '09' or

Hwgr = '10' or hwgr = '11' or Hwgr = '26' or hwgr = '29' or

hwgr = '27' or hwgr = '28')

group by wabe) e12,

(select wabe,

sum(vk &monat) as Monat_ &monat,

decode(&monat,

07,

sum(vk07),

08,

(sum(vk07) + sum(vk08)),

09,

(sum(vk07) + sum(vk08) + sum(vk09)),

10,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10)),

12,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10) +

sum(vk12)),

12,

(sum(vk07) + sum(vk08) + sum(vk09) + sum(vk10) +

sum(vk12) + sum(vk12))

) as aufgelalt

from t154wast t

where jahr = &jahr + 1

and stufe = ' '

and wabe = '01'

and (Hwgr = '01' or hwgr = '02' or Hwgr = '03' or hwgr = '04' or

Hwgr = '06' or hwgr = '07' or Hwgr = '08' or hwgr = '09' or

Hwgr = '10' or hwgr = '11' or Hwgr = '26' or hwgr = '29' or

hwgr = '27' or hwgr = '28')

group by wabe) f12,

(select wabe,

sum(vk &monat) as Monat_ &monat,

decode(&monat,

01,

sum(vk01),

02,

(sum(vk01) + sum(vk02)),

03,

(sum(vk01) + sum(vk02) + sum(vk03)),

04,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04)),

05,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05)),

06,

(sum(vk01) + sum(vk02) + sum(vk03) + sum(vk04) +

sum(vk05) + sum(vk06)),

07,

(0),

08,

(0),

09,

(0),

10,

(0),

12,

(0),

(0),

12,

(0)

) as aufgelneu

from t154wast t

where jahr = &jahr + 1

and stufe = ' '

and wabe = '01'

and (Hwgr = '01' or hwgr = '02' or Hwgr = '03' or hwgr = '04' or

Hwgr = '06' or hwgr = '07' or Hwgr = '08' or hwgr = '09' or

Hwgr = '10' or hwgr = '11' or Hwgr = '26' or hwgr = '29' or

hwgr = '27' or hwgr = '28')

group by wabe) g12

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich finde es schon reichlich unverschämt, dass Du bei diesen Quellcodes nicht in der Lage zu seien scheinst, die Code Tags zu benutzen, vor allem, dass ich Dich darauf hingewiesen habe dieses zu tun. Es ist durchaus hilfreich solche großen Codestrukturen zu formatieren, das erleichtert Dir das verstehen und den Leuten hier, das helfen.

Ich habe das jetzt mal so versucht was leider nicht klappt :(

Jetzt meint er "From sei nicht an der erwarteten Stelle"

Die Fehlermeldung sagt Dir was zu tun ist.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi Flashpixx,

Wie ich schon sagte bin ich Anfänger!

Was ich schon kennengelernt habe ist der Beautifier in PL/SQL.

Den habe ich auch laufen lassen in der Hoffung das es das ist was Du meinst!?

Aber anscheinend wohl nicht? sry dafür

PS: Und wie geht das was Du meinst?

Das der Code nicht mehr läuft liegt aber genau an dem Beautifier, da er vor dem & einer jeden Variable plötzlich ein Leerzeichen eingesetzt hat....

Ich habe jetzt quasi jeden "Satz" (1/16) den Code eingeklammert

und zwischen den einzelnen select's den union all gelegt.

Wie Flashpixx schon sagte funktioniert das! :)

Vielen Dank Flash!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Eine Frage: Handelt es sich jetzt um ein und das selbe Statement, dass nur mit unterschiedlichen WHERE Bedingungen laufen soll? Sehen zumindest so aus.

Falls ja, dann pack alles in eine WHERE Bedingung und verknüpfe es mit OR:

WHERE ( ... ) OR ( ... ) OR (... )

Das sollte deutlich übersichtlicher sein.

Dim

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi Dimitri,

Es sind 7 subselects die ich brauche um 10 verschiedene Spalten zu berechnen

Und die Subselects sind nicht alle gleich, da es verschiedene Monate sind oder Jahre.

Und dann geht das ganze nochmal * 16 wegen der 16 Warengruppen.

Könnte man sicherlich besser machen aber erstmal überhaupt zum laufen bekommen ;)

Ich bin jetzt soweit fertig und habe nur noch ein Problem mit einem der Warengruppen.

Ich berechne ja insg. 10 Spalten und in einer der Warengruppen liefert eine Spalte kein Wert zurück.

Soweit kein Problem nur das PL/SQL so toll ist, dass wenn eine Spalte kein Wert liefert er die komplette Zeile ausblendet obwohl einzelne Spalten durchaus Wert liefern...

Wie kann man das denn abfangen?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...