1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  2. Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, Oracle, Sql-Server, Postgres, Access uvm
    Information ausblenden

Brauche Hilfe bei einer speziellen Abfrage T-SQL

Dieses Thema im Forum "Microsoft SQL Server" wurde erstellt von whistler, 12 November 2010.

  1. whistler

    whistler Neuer Benutzer

    Hallo zusammen,

    ich mache mir gerade eine Abfrage im SQL-Server Managment Studio, um eine Verbrauchsstatistik aus unserem ERP System zu bekommen. Leider komme ich nicht wirklich weiter.

    In einer Tabelle "lagerbewegungen" werden sämtliche Lager Zugänge und Abgänge protokolliert. Aus dieser Tabelle möchte ich eine Statistik ausgegeben bekommen die wie folgt aussieht.

    Artikel | Jahr | Monat | Abgänge | Zugänge
    Pro08n | 2010 | Januar | 5200.50 | 5461.00
    Pro08n | 2010 | Februar | 6558.62 | 6025.00
    Pro08n | 2010 | März | 6097.80 | 6591.00
    Pro08n | 2010 | April | 8909.16 | 8011.98
    Pro08n | 2010 | Mai | 5312.14 | 5460.00
    Pro08n | 2010 | Juni | 5728.14 | 6825.00
    Pro08n | 2010 | Juli | 4251.02 | 2730.00
    Pro08n | 2010 | August | 5761.53 | 6999.00
    Pro08n | 2010 | September | 6467.30 | 6370.00
    Pro08n | 2010 | Oktober | 9840.13 | 10921.10
    Pro08n | 2010 | November | 2772.94 | 3640.00
    Pro06n | 2010 | Januar | 5200.50 | 5461.00
    Pro06n | 2010 | Februar | 6558.62 | 6025.00
    Pro06n | 2010 | März | 6097.80 | 6591.00
    Pro06n | 2010 | April | 8909.16 | 8011.98
    Pro06n | 2010 | Mai | 5312.14 | 5460.00
    Pro06n | 2010 | Juni | 5728.14 | 6825.00
    Pro06n | 2010 | Juli | 4251.02 | 2730.00
    Pro06n | 2010 | August | 5761.53 | 6999.00
    Pro06n | 2010 | September | 6467.30 | 6370.00
    Pro06n | 2010 | Oktober | 9840.13 | 10921.10
    Pro06n | 2010 | November | 2772.94 | 3640.00
    Pro14n | 2010 | Januar | 5200.50 | 5461.00
    Pro14n | 2010 | Februar | 6558.62 | 6025.00
    Pro14n | 2010 | März | 6097.80 | 6591.00
    Pro14n | 2010 | April | 8909.16 | 8011.98
    Pro14n | 2010 | Mai | 5312.14 | 5460.00
    Pro14n | 2010 | Juni | 5728.14 | 6825.00
    Pro14n | 2010 | Juli | 4251.02 | 2730.00
    Pro14n | 2010 | August | 5761.53 | 6999.00
    Pro14n | 2010 | September | 6467.30 | 6370.00
    Pro14n | 2010 | Oktober | 9840.13 | 10921.10
    Pro14n | 2010 | November | 2772.94 | 3640.00


    Die Tabelle "lagerbewegungen" hat folgende Spalten:

    Artikel | Menge | Datum

    Die Zu- und Abgänge unterscheiden sich nur durch ein Minus vor der Zahl.
    Ein Teilabfrage hab ich schon hin bekommen, aber am Rest verzweifel ich.....



    Abfrage für Abgänge:

    select DATENAME(MONTH, datum) as Monat, Abgang=sum(Menge)*-1
    from lagerbewegungen
    where datum >= '01.01.2010' and datum <= '31.12.2010' and artikel = 'pro08n' and menge like '-%'
    GROUP BY DATENAME(MONTH, datum)
    order by max(MONTH(datum))


    Hoffe ihr könnt mir helfen.

    Gruß und Danke im vorraus
     
  2. Charly

    Charly Datenbank-Guru

    AW: Brauche Hilfe bei einer speziellen Abfrage T-SQL

    Hallo whistler,

    gib mir mal ein stück Tabelle (Create- und Insert-Anweisungen) damit ich nicht so viel Tipparbeit habe:D

    Gruß Charly
     
  3. whistler

    whistler Neuer Benutzer

    AW: Brauche Hilfe bei einer speziellen Abfrage T-SQL

    kannst du gerne haben :)

    Hab jetzt nur mal für 3 Artikel die Daten rausgeschrieben.

    DANKE
     

    Anhänge:

  4. whistler

    whistler Neuer Benutzer

    AW: Brauche Hilfe bei einer speziellen Abfrage T-SQL

    Hab's jetzt. Jemand aus nem anderen Forum hat's geschafft. Falls es jemanden interessiert:

    Code:
    SELECT   artikel, YEAR (Datum) AS jahr,
    DATENAME(MONTH, datum)  AS Monat,
    SUM (CASE WHEN Menge > 0 THEN Menge ELSE 0 END) AS Zugang,
    SUM (CASE WHEN Menge < 0 THEN Menge ELSE 0 END) AS Abgang
    
    FROM     lagerbewegungen
    
    WHERE    datum >= '01.01.2010' AND datum <= '31.12.2010' and artikel like 'pro%'
    
    GROUP BY  artikel, YEAR (Datum), DATENAME(MONTH, datum)
    
    ORDER BY artikel, YEAR (max(Datum)), MONTH(max(datum))
    Danke Trotzdem
     
Die Seite wird geladen...

Diese Seite empfehlen