[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jul 2002
    Beiträge
    151

    Post mit SQL nur 100 größte Sätze lesen

    Hi all,
    Ich möchte aus einer Datei mit SQL die Sätze auswählen mit den 100 größten Werten eines Feldes. z.B. die Kundenummern der 100 umsatzstärsten Kunden.
    Vielen Dank im Voraus
    Holger

  2. #2
    Registriert seit
    Dec 2000
    Beiträge
    138

    Post

    hi,
    in anderen sql-umgebungen klappt TOP oder LIMIT, vielleicht findest du was ähnliches für die 400 in der doku.
    gruß, karin

  3. #3
    Registriert seit
    Dec 2000
    Beiträge
    79

    Post

    Hallo,
    versuchs mal mit

    select .... order by umsatz desc fetch first 100 rows only

    Gruß Thomas

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.695

    Post

    "fetch n rows only" wird leider erst ab V5 unterstützt.
    Es bleibt einem halt nichts anderes übrig, als nach n Sätzen mit dem fetch selber aufzuhören, d.h., die Anzahl der Sätze selbst zu zählen.
    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

  5. #5
    Registriert seit
    Jul 2002
    Beiträge
    151

    Wink

    Mir ist selbst noch eine Variante eingefallen:
    Die Datei in eine andere (temporäre) Datei einfügen, in der Sie nach
    dem Umsatz absteigend sortiert ist.
    Anschließend mit relativ-record_number arbeiten :
    SELECT * FROM dateineu WHERE RRN(dateineu) <= 100
    Holger



    [Dieser Beitrag wurde von holly am 31. Januar 2003 editiert.]

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.695

    Post

    @holger

    Die Lösung ist zwar ganz nett, ist aber
    1. unzureichend wenn man mit Query auswerten will , da rrn(*) von Query nicht unterstützt wird und
    2. Per Programm nach 100 Fetch aufzuhören ist erheblich effektiver.

    Deine Lösung kann man für Query nur dahingehend erweitern, dass nach der Ausgabe in die Datei mittels CPYF nur 100 Sätze in eine 2. Datei kopiert werden und diese dann per Query ausgewertet werden kann.
    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

Similar Threads

  1. SQL - Fehler
    By Kaufmann in forum IBM i Hauptforum
    Antworten: 11
    Letzter Beitrag: 28-06-06, 14:11
  2. SQL .. for update of (RPG embedded SQL)
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 01-06-06, 09:43
  3. SQL: DISTINCT und RRN?
    By Akku in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 10-05-06, 08:07
  4. SQl Sätze hinzufügen
    By Herbie in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 30-11-04, 10:46
  5. doppelte Sätze löschen mit SQL
    By hs in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 22-11-04, 10:30

Berechtigungen

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