[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Die bringst du ganz genauso mit "left join" dazu, wobei du allerdings keine einfache where-Bedingung auf diese Datei machen darfst. Dies führt automatisch zu einem Inner-Join, also:

    select ... from FileA A
    left join FileB B on a.key=b.key
    where a.feld = ... and b.feld=...

    ist identisch zu

    select ... from FileA A
    inner join FileB B on a.key=b.key
    where a.feld = ... and b.feld=...

    um trotzdem Left-Joins abzufragen ist ein Konstrukt erforderlich:

    where ... (b.feld = ... or b.feld is null) ...

    Ein Union ist da was ganz anderes:

    select a, b, c from DateiA
    union [all]
    select a, b, c from DateiB

    Die Anzahl der Felder beider Select's muss identisch sein, weigehend auch der Ergebnistyp.
    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
    Mar 2002
    Beiträge
    5.365
    ... wenn wir schon bei der akademischen Diskussion über UNION gelandet sind:
    UNION ist (fast) das einzige Konstrukt mit dem man Felder aus unterschiedlichen Quelltabellen im selben Feld der Zieltabelle darstellen kann.
    Beispiel:
    select name, ort, strasse
    from kunde
    union
    select k.name, a.ort, a.strasse
    from kunde k
    join adress a
    on ...

    fast insofern, weil hier partiell ein subselect günstiger sein könnte.
    Beispiel:
    select k.name, (coalesce((select a.ort from adress a
    where a.kdnr = a.kdnr), k.ort)
    from kunde k

    D*B
    Zitat Zitat von Fuerchau Beitrag anzeigen
    Die bringst du ganz genauso mit "left join" dazu, wobei du allerdings keine einfache where-Bedingung auf diese Datei machen darfst. Dies führt automatisch zu einem Inner-Join, also:

    select ... from FileA A
    left join FileB B on a.key=b.key
    where a.feld = ... and b.feld=...

    ist identisch zu

    select ... from FileA A
    inner join FileB B on a.key=b.key
    where a.feld = ... and b.feld=...

    um trotzdem Left-Joins abzufragen ist ein Konstrukt erforderlich:

    where ... (b.feld = ... or b.feld is null) ...

    Ein Union ist da was ganz anderes:

    select a, b, c from DateiA
    union [all]
    select a, b, c from DateiB

    Die Anzahl der Felder beider Select's muss identisch sein, weigehend auch der Ergebnistyp.
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  3. #3
    Registriert seit
    Jan 2003
    Beiträge
    302
    Also ,erst einmal vielen Dank an Fuerchau !

    Ich muss die kundenstammsätze und die versandadressen als einen "Topf" haben und nicht mit einander verknüpfen.
    Und nicht jeder Kunde hat Sätze in den Versandadressen !

    Ich muss aus allen Kundenstamm und Versandadressen die Kundennummern wissen, die die gewünschte Branche haben !

    Ich bin daher davon überzeugt, dass ich einen UNIOn brauche.

    BenderD, ich hatte Sie als "umgänglicher" kennengelernt !

    Ich probiere mal weiter, bei "code400" habe ich gerade einen
    interessanten Kontakt.

    Nochmals vielen Dank !
    Peet

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Das ist ja dann noch einfacher:

    select KDNR from Kunden K
    where
    exists (select * from FileA A where K.KDNR = A.KDNR and ...)
    or
    exists (select * from FileB B where K.KDNR = B.KDNR and ...)

    ... ist dann durch die Suchbedingung für die Branche zu ergänzen.
    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
    Jan 2003
    Beiträge
    302
    Vorab schon mal WOW !

    Ich probiere es heute noch aus !
    Danke !
    Peet

Similar Threads

  1. Join logical file mit select
    By martikx in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 28-11-09, 08:17
  2. SQL left join
    By ahingerl in forum IBM i Hauptforum
    Antworten: 8
    Letzter Beitrag: 08-12-06, 08:28
  3. SQL - Join mit Bedingung und Update
    By cassi in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 22-11-06, 15:03
  4. CREATE FUNCTION mit select im Bauch ?
    By cheffe1008 in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 21-09-06, 16:05
  5. Cobol-Programm mit Embedded SQL (SELECT CASE)
    By klausgkv in forum NEWSboard Programmierung
    Antworten: 8
    Letzter Beitrag: 08-06-06, 13:47

Berechtigungen

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