[NEWSboard IBMi Forum]
Seite 3 von 3 Erste ... 2 3

Thema: Sql Rekursiv

  1. #25
    Registriert seit
    Aug 2001
    Beiträge
    2.873
    Start With Connect By wurde mit TR (5?!) in Release 7.1 hinzugefügt.
    Wenn also der PTF-Stand auf 7.1 einigermaßen aktuell ist, wird die Hierarchische Query Anweisung unterstützt.
    Hier übrigens noch ein Link zu dem Thema:
    Hierarchical Queries with DB2 Connect By
    A new method for recursively processing data relationships


    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

  2. #26
    Registriert seit
    Apr 2005
    Beiträge
    104
    Echte rekursive SQL-Funktionen (SQL Functions oder Stored Procedures) funktionieren auf der AS400 blitzsauber, schon länger, und seit mindestes 10 Jahren.

    Und wer will, kann damit alles mögliche realisieren, auch wenn RPG/400 und COBOL/400 Proleme mit echten rekursiven Programmen haben sollten. Wenn man von der Uni her gewohnt ist, auch rekursive Funktionen zu verwenden, ist es auch viel einfacher, einen Algorithmus rekursiv zu definierern, als diese RCTE-Konstrukte zu verstehen. Der rekursive Code dürfte für ihn auch viel klarer und logischer sein.

  3. #27
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Ja und Nein.
    Rekursive Funktionen in COBOL/RPG ist grundsätzlich erst mit Einführung von ILE und Modulen möglich, wobei es mit COBOL etwas schlechter mit dem Aufruf gelöst ist als in ILERPG.
    Andererseits zwingt dies ja, grundsätzlich Programmmodule zur Verarbeitung rekursiver Dateistrukturen einzusetzen.
    Durch die, gar nicht so schwierige, rekursiven CTE's kann ich mir eben sehr viel Aufwand sparen, ins besonders wenn ich für die Verarbeitung der Daten eigentlich keine Rekursion benötige.
    Rekursive CTE's gibts eben schon seit V5R4 und somit doch schon seit ca. 15 Jahren.

    Zum Vergleich:
    In unserer BI-Suite (windowsbasiert) gibt es einen rekursiven Stücklisten-Import der Infor-XPPS-Anwendung.
    Hintergund war die Information, welche Komponenten sind insgesamt über alle Strukturebenen hinweg verbaut um eine genauere Kalkulation zu ermöglichen.
    Dieser ist schon relativ alt und eben mit rekursiven Funktionsaufrufen und somit 1000den von SQL-Abfragen gelöst. Hier kann ich ca. 100 Sätze / Sekunde importieren.
    Aufgrund erweiterter Anforderung der Filter- und sonstiger Rahmenbedingungen habe ich der BI-Suite im sog. ODBC/OLEDB-Import eine rekursive CTE-Abfrage gebaut. Diese erlaubt nun, alle möglichen Filter- und Rahmenbedingungen "frei Schnautze" je nach Kundenanforderung unterzubringen.
    Und ein weiterer Vorteil: Der Import schafft nun ca. 1500-1800 Sätz / Sekunde, da nur noch genau 1 Query angefordert wird.
    Fazit: Rekursive CTE können also durchaus die Verarbeitungsgeschwindigkeit um mehr als Faktor 15 erhöhen und sind somit nicht zu verachten.
    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

Berechtigungen

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