[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Feb 2001
    Beiträge
    20.704
    Wie immer gibts mehrere Möglichkeiten:

    select * from Datei1
    exception join Datei2
    on a.Key=b.Key [and ...]

    Selektiert alle aus Datei1 die nicht in Datei2 sind (Gegenteil von inner).
    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

  2. #2
    Registriert seit
    Aug 2006
    Beiträge
    2.114

    Irgendwas stimmt nicht!

    Hallo *all,
    ich habe folgendes Statement abgesetzt:
    select distinct apo01tr.apanr, apo01tr.§§date
    from apo01tr exception join apo01pf
    on apo01tr.apanr = apo01pf.apanr
    and apo01tr.§§date > 20110301
    and apo01tr.apkdj2 = 1
    order by apo01tr.apanr asc

    und bekomme das Ergebnis.
    32115 20.100.903
    32115 20.100.904
    32116 20.100.901
    32116 20.100.902
    32117 20.100.902
    32117 20.100.903
    32119 20.100.830
    32119 20.100.831
    32120 20.100.827

    Wenn ich das in Query mache bekomme ich folgendes zu sehen:

    32460 20.110.301
    32461 20.110.301
    32462 20.110.301
    32463 20.110.301
    32464 20.110.301
    32464 20.110.301
    32464 20.110.301

    Sprich im SQL ignoriert der gefließentlich die Datumsabfrage.
    Warum?

    GG

  3. #3
    Registriert seit
    Aug 2006
    Beiträge
    2.114
    Also ich habe das heute nochmals gemacht, und die SQL-Abfrage geändert:
    select distinct apo01tr.apanr, apo01tr.§§date
    from apo01tr
    where apo01tr.apkdj2 = 1
    and apo01tr.§§date > 20110301
    order by apanr desc

    dann bekomme ich die selben Sätze wie im Query
    843251 20.110.318
    843250 20.110.318
    843249 20.110.318
    843248 20.110.317
    843247 20.110.317
    843246 20.110.317
    843245 20.110.317
    843244 20.110.316
    843243 20.110.316
    843243 20.110.317

    Wieso knallt die Exception dann so dazwischen?
    GG

  4. #4
    Registriert seit
    Aug 2001
    Beiträge
    2.931
    Schau Dir mal Deine beiden Abfragen an!
    In der ersten (mit dem exception join) wird sowohl das Datum als auch apo01tr.apkdj2 = 1 in der JOIN-Anweisung hinterlegt.

    In der zweiten Abfrage wird das Datum und apo01tr.apkdj2 in der Where-Bedingung angegeben.

    Wenn Du Deine SQL-Abfrage wie folgt änderst, solltest Du auch beim Exception Join das erwartete Ergebnis erhalten:
    Code:
    select distinct apo01tr.apanr, apo01tr.§§date
       from    apo01tr exception join apo01pf
            on apo01tr.apanr = apo01pf.apanr
       Where     apo01tr.§§date > 20110301
             and apo01tr.apkdj2 = 1
       order by apo01tr.apanr asc
    ... genauso hast Du es vermutlich auch in deinem Query abgesetzt.

    Birgitta
    Birgitta Hauser

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

  5. #5
    Registriert seit
    Aug 2006
    Beiträge
    2.114
    Danke,
    werde ich morgen mal ausprobieren.

    GG

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.704
    Ein exception join selektiert alle Sätze die nicht im Join vorhanden sind.
    Ein Bedingung im Where entspricht immer einem Inner Join !

    Exception kann man auch mit
    where not exists (Select ...) erreichen.
    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. Satz löschen - ODBC
    By heini in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 27-06-06, 11:34
  2. SFLEND - Bleibt nicht beim letzten Satz stehen...
    By svente in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 23-02-06, 15:32
  3. Satz ändern in Subfile
    By Toschie in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 31-05-05, 11:37
  4. SUBFILE - Einen bestimmten Satz in der 1. Zeile plazieren
    By malzusrex in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 29-10-04, 09:49
  5. ILE Cobol: Satz löschen aus Subfile
    By rebe in forum NEWSboard Programmierung
    Antworten: 7
    Letzter Beitrag: 16-04-04, 09:29

Berechtigungen

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