Announcement

Collapse
No announcement yet.

Problem mit KW aus Datum

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Problem mit KW aus Datum

    Guten Tag!

    Bin nicht allzu fit in diesem Thema und daher komm ich einfach nicht bei folgendem Problem weiter:

    Also ich hab ne Tabelle die folgende für mich wichtige Spalten hat:

    - Planstart, in der die einzelnen Daten stehen
    - Maschinen Nr.
    - Planmenge

    Also ein Datensatz sieht hauptsächlich wie folgt aus:
    Code:
    MaschinenNr     Planstart                           Planmenge
    
    120             02/25/2010 10:40:00                 2000
    120             02/25/2010 11:07:00                 1500
    200             02/26/2010 12:07:00                 1500
    usw.

    So jetzt will ich für jede Kalenderwoche die Gesamt-Planmenge für jede Maschine ausgegeben bekommen!

    Was ich hinkriege ist, dass ich für KW8 und der Maschine 120 die Gesamtmenge bekomme!


    SELECT SUM (PLANMENGE) FROM BELEGUNG

    WHERE to_char(PLANSTART,'iw') = 8 AND MaschinenNR = 120



    dann kommt sagen wir mal 200000 raus als Ergebnis!


    Jetzt will ich aber so ein Ergebnis erreichen:

    Code:
    Maschine Nr.           KW8             KW9           KW10            usw.
    
    120                    180000          100000        .................                  
    200                    200000          300000        .................
    150                    250000          125000        .................
    Also so in der Art!

    Wie mach ich das?

    Hoffe mir kann da jemand weiterhelfen?!

    mfg
    skip2mylou

  • #2
    Als Anregung zum Nachschlagen und Weiterbauen hier ein Beispiel, das die wesentlichen Funktionen enthält, die Daten werden im ersten Teil (WITH-Clause) zufällig generiert:
    Code:
    WITH data AS
      (SELECT trunc(dbms_random.value(100,120))      MaschinenNr, 
              trunc(sysdate-dbms_random.value(0,50)) Planstart,   
              trunc(dbms_random.value(1,10))*500     Planmenge
        FROM dual CONNECT BY LEVEL <=100)
    SELECT MaschinenNr, sum(Planmenge),  to_char(planstart,'IW') Isowoche, min(trunc(planstart,'IW')) Startdatum        
      FROM data
      GROUP BY MaschinenNr,  to_char(planstart,'IW') 
      ORDER BY Isowoche, MaschinenNr
    
    MNNR	SUM(PM)	ISOWOCHE	STARTDATUM
    -----------------------------------------------------------------------------------
    100	4000	01	       04.01.2010
    108	3500	01	       04.01.2010
    116	2500	01	       04.01.2010
    101	2500	02	       11.01.2010
    102	4000	02	       11.01.2010
    104	4500	02	       04.01.2010
    107	4500	02	       04.01.2010
    ...
    Zuletzt editiert von jum; 25.02.2010, 09:52.

    Comment


    • #3
      Also die Select Anweisung ist wunderbar!

      nur was bedeutet der Teil mit dem With data AS?

      Benutzt du da Zufallwerte?

      Comment


      • #4
        Sorry, hab das mit der With Clausel überlesen!

        Also alles bestens ;-)

        Vielen Dank nochmal!!!

        Comment

        Working...
        X