[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jul 2004
    Beiträge
    60

    SQL erste x sätze aller Gruppen

    Hallo,

    habe eine datei mit Artikel und Chargen und möchte zu jeden Teil immer die letzten 3 Chargen

    habe es so versucht

    select artikel, charge from datei group by artikel, charge fetch first 3 rows olny

    dabei bekommen ich aber nur 3 sätze

    gibt es da eine lösung

    Danke

    DD3TJ

  2. #2
    cbe is offline [professional_User]
    Registriert seit
    May 2005
    Beiträge
    392
    hm, als SQL habe ich keine (lesbare) Idee,

    aber vielleicht in einem Programm als Cursor definieren
    select artikel, charge from datei group by artikel, charge order by artikel, charge

    und dann in Fetch-Schleife lesen:
    - bei Artikelwechsel Zähler auf 0 setzen
    - Satz ausgeben wenn Zähler<3
    - Zähler+1

  3. #3
    Registriert seit
    Apr 2005
    Beiträge
    385
    Artikelstamm JOIN auf ein (Select CHARGE FROM CHARGENSTAMM WHERE CARTIKEL =AARTIKEL FRETCH FIRST 3 ROWS)

    Aber Achtung ORDER BY DATE DESC mit angeben, sonst bekommst du nur die ersten 3 Chargen...

  4. #4
    Registriert seit
    Aug 2001
    Beiträge
    2.873
    Wie wär's damit:
    Code:
    With x as select Rank() Over(Partition By Artikel order By Artikel, Charge Desc) lfd
                      artikel, charge 
                 from datei 
                group by Artikel, Charge 
     Select *
       From X  
      Where Lfd between 1 and 3;
    ggf. ist noch eine zusätliche Common Table Expression erforderlich wegen des GROUP BYs

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 4. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  5. #5
    Registriert seit
    Jul 2004
    Beiträge
    60
    Hallo Frau Hauser,

    Damit ging es

    Danke

    Gruss
    DD3TJ
    Thibaut Foucart

  6. #6
    Registriert seit
    Apr 2005
    Beiträge
    385
    Hallo Birgitta,

    was ist denn das? Sowas habe ich ja noch nie gesehen!!!!

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.236
    Das sind auch Funktionen die es erst ab V6 gibt.
    Wer also noch auf V5 ist kann diese nicht nutzen.
    Stichwort im SQL-Handbuch: OLAP sowie auch neu CUBE.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  8. #8
    Registriert seit
    Aug 2001
    Beiträge
    2.873
    Die OLAP-Ranking Funktionen (Row_Number(), Rank() und Dense_Rank()) gibt es bereits seit Release V5R4!
    Das multidimensional Grouping (CUBE, ROLLUP und GROUPING SET) gibt es allerdings erst ab 6.1.
    Wobei das eine mit dem anderen nichts zu tun hat.

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 4. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  9. #9
    Registriert seit
    Apr 2005
    Beiträge
    385
    @Fuerchau
    Handbuch? Was ist denn das?

    Dann werde ich mir das mal anschauen, sieht interresant aus...

Similar Threads

  1. erste Schritte mit XML
    By muadeep in forum NEWSboard Programmierung
    Antworten: 9
    Letzter Beitrag: 15-01-15, 13:49
  2. CCSID aller PF / LF ermitteln
    By dibe in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 10-09-14, 13:08
  3. Systemtabelle mit User/Gruppen
    By stemmerter in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 22-02-14, 16:33
  4. Oxaion: Kaum gegackert, schon das erste Ei
    By RM Haaßengier in forum Archiv NEWSblibs
    Antworten: 0
    Letzter Beitrag: 11-10-02, 16:05
  5. V5R1, liste aller stolpersteine
    By karin-vogelmann in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 12-09-02, 17:22

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •