Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

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

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

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

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.

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!

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

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?

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.