Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

TSQL unpivot mit max

Dieses Thema im Forum "Microsoft SQL Server" wurde erstellt von Vale46, 2 Mai 2016.

  1. Vale46

    Vale46 Neuer Benutzer

    Hallo Zusammen,

    bin sowohl hier im Forum neu, als auch bei TSQL. Hintergrund der Verwendung ist Jet Reports.
    Hab ein Problem mit einem Script, dass leider nur fast macht was ich eigentlich möchte.

    Um Daten auszuwerten habe ich mir ein Script mit UNPIVOT zusammengestöpselt, Ziel ist es Strukturstücklisten darzustellen. Bei den Stücklisten gibt es Versionsnummern und ich möchte die entsprechend letzte ausgeben. ch benötige dabei MAX nun aber pro Artikelnummer - mit dem aktuellen Script wird über alle Aritkelnummern die MAX Version ermittelt und somit etliche Artikel "verschluckt".

    Hoffe das war verständlich erklärt und ich hoffe auch, dass ich mit meinen Problem hier richtig bin.
     

    Anhänge:

  2. akretschmer

    akretschmer Datenbank-Guru

    Kannst Du mal schlicht und simpel via Create Table und Insert - Befehlen eine Testumgebung definieren und sagen, was raus kommen soll?
     
  3. Vale46

    Vale46 Neuer Benutzer

    Anbei ein Beispiel an vier Artikeln, was das Script ohne das MAX auswirft.
    In Spalte die Nummer des fertigen Produktes, in Spalte D stehen die Bauteile aus denen das Produkt besteht. In Spalte E der Knackpunkt, die Versionsnummer. Immer wenn sich die Stückliste ändert gibt es in der Datenbank einen neue Version. Ich benötige also pro Produkt immer die aktuelle (letzte Version) - diese könnte auch "leer" sein.

    Für das Beispiel:
    Artikel1 | Version 3
    Aritkel2 | Version 1
    Artikel3 | Version 4
    Aritkel4 | Version 5

    Anbei auch das Script ohne MAX, durch dass dieses Beipsiel entstanden ist.
     

    Anhänge:

  4. akretschmer

    akretschmer Datenbank-Guru

    denkst du, daß ich das PDF jetzt abtippe?

    "Ich benötige also pro Produkt immer die aktuelle (letzte Version)" - klingt nach Anwendung von max() auf ein Datumsfeld oder so.
     
  5. Vale46

    Vale46 Neuer Benutzer

    Sorry, konnte kein Excel File laden? Gibt es eine Alternative?

    Das mit dem Datum müsste ich checken.
    Das erste Script funktioniert soweit, nur wird die letzte Version nicht in Abhängigkeit des Produktes ausgegeben. Einige Produkte haben die letzte Version Nr.9 und somit werden auch nur diese Produkte ausgegeben.
     
  6. Klingt für mich nach einem Subselect den du in dein Select bauen solltest.
    Habe jetzt nicht soviel Erfahrung mit Pivot, müsste das mal mit Testdaten durchspielen.
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden