[NEWSboard IBMi Forum]
Seite 2 von 2 Erste 1 2
  1. #13
    Registriert seit
    Oct 2007
    Beiträge
    42

    SQL STM

    Guten Morgen,

    hier ein SQL das geht... es ist aber nur ein LEFT JOIN enthalten

    Code:
    SELECT TPROD,
    TTDTE,
    BPCSF.IIML01.IDESC  
    FROM BPCSF.ITHL01 
    LEFT JOIN BPCSF.IIML01 
    ON TPROD = IPROD  
    Where TTDTE >= 20110331
    Und nun wollte ich eine weitere Tabelle über LEFT Join verbinden, jedoch kommt da die u.g. Fehlermeldung.

    Code:
    SELECT TPROD, 
    TTDTE, 
    BPCSF.IIML01.IDESC, 
    BPCSF.AVML01.VNDNAM /*T3 neu*/
    FROM BPCSF.ITHL01 
    LEFT JOIN BPCSF.IIML01 
    ON TPROD = IPROD
    LEFT JOIN BPCSF.AVML01 /*T3 neu*/
    ON BPCSF.IIML01.IPROD = VENDOR 
    Where TTDTE >= 20110331 and IITYP ='K'
    Fehlermeldung

    SQL-Status: 22003
    Vendorencode: -802
    Nachricht: [SQL0802] Fehler bei Datenumsetzung oder beim Zuordnen von Daten. Ursache . . . . : Fehler der Art 1 ist aufgetreten: Fehlerarten und ihre Bedeutung: 1 -- Arithmetischer Überlauf 2 -- Gleitkommaüberlauf 3 -- Gleitkommaunterlauf 4 -- Gleitkommakovertierungsfehler 5 -- Kein exaktes Ergebnis 6 -- Ungültige numerische Daten 7 -- DBCS- oder UTF-8-Daten sind nicht gültig. 8 -- Division durch Null 9 -- Hash-Wert kann für die angeforderte Abfrage nicht berechnet werden. 10 -- Benutzerdefinierte Funktion hat Abgleichungsfehler zurückgegeben. 11 -- Ungültige Länge in Spalte mit variabler Länge gefunden, die von einer Array-Ergebnisgruppe zurückgegeben wurde. 12 -- Ergebnis einer Verknüpfungsperation für ein Feld variabler Länge überstieg die maximal zulässige Länge für die Ergebnisart. Wenn der Fehler beim Zuordnen eines Werts zu einer Host-Variablen einer Anweisung FETCH oder eingebetteten Anweisung SELECT, SET oder VALUES INTO auftrat, ist der Name der Host-Variablen *N und die relative Position der Host-Variablen in der Klausel INTO ist 0. Ist der Name der Host-Variablen *N, trat der Fehler bei dem Versuch auf, eine Suchbedingung aufzulösen. Wenn mehrere Fehler beim Zuordnen von Daten aufgetreten sind, handelt es sich um eine Beschreibung des ersten Fehlers, der aufgetreten ist. Die vorherigen Nachrichten im Jobprotokoll beschreiben Fehler, die beim Zuordnen von Daten aufgetreten sind. Fehlerbeseitigung: Der Fehler wurde von ungültigen oder zu umfangreichen Daten verursacht. Die vorherigen Nachrichten im Jobprotokoll (Befehl DSPJOBLOG) oder F10 (Nachrichten im Jobprotokoll anzeigen) in dieser Anzeige drücken, um die fehlerhaften Zeilen und Spalten zu bestimmen. Die Daten korrigieren und die Anforderung wiederholen.
    Verarbeitung wurde beendet, da die hervorgehobene Anweisung nicht erfolgreich abgeschlossen werden konnt

  2. #14
    Registriert seit
    Aug 2001
    Beiträge
    2.928
    Haben IPPROD und VENDOR den gleichen Datentypen und die gleiche Länge?

    Ansonsten denke ich, dass die Verknüpfung von NULL-Werten, die beim Left Outer Join bei nicht gefunden entstehen können für die Fehlermeldung verantwortlich sind.
    Deshalb versuch mal folgendes:
    Code:
    SELECT TPROD, TTDTE, BPCSF.IIML01.IDESC, 
          BPCSF.AVML01.VNDNAM /*T3 neu*/
    FROM BPCSF.ITHL01 
         LEFT JOIN (BPCSF.IIML01 
                    LEFT JOIN BPCSF.AVML01 /*T3 neu*/
                    ON BPCSF.IIML01.IPROD = VENDOR)
         ON TPROD = IPROD
    Where TTDTE >= 20110331 and IITYP ='K'
    In dem Beispiel wird zunächst der zweite Left Outer Join ausgeführt und das Ergebnis über Left Outer Join mit der ersten Tabelle verknüpft.

    Ist IPROD eigentlich eindeutig, oder in mehreren Tabellen (u.U. mit unterschiedlicher Definition) vorhanden?

    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

  3. #15
    Registriert seit
    Oct 2007
    Beiträge
    42

    Super

    Der Tipp mit den Datentyp war der richtige!!! Super vielen Dank!! Musste ich noch ändern.

    Mensch wenn dann so die Daten angezeigt werden kommt mir immer ein

Similar Threads

  1. dynamisches Group by funktioniert nicht
    By Tobse77 in forum NEWSboard Programmierung
    Antworten: 12
    Letzter Beitrag: 24-09-09, 08:31
  2. sql select mit zusätzl. Feldern
    By rr2001 in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 07-07-06, 09:56
  3. Cobol-Programm mit Embedded SQL (SELECT CASE)
    By klausgkv in forum NEWSboard Programmierung
    Antworten: 8
    Letzter Beitrag: 08-06-06, 13:47
  4. Satzanzahl Select (embedded SQL)
    By Schorsch in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 08-09-05, 15:22
  5. SQL Select unter 5.1 und 5.2
    By holly in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 15-06-04, 10:04

Berechtigungen

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