Hier ist, wo ich bin:PL/SQL-Entwickler: Beitritt von VARCHAR2 zu NUMBER?
TABLE1.ITM_CD
VARCHAR2-Datentyp istTABLE2.ITM_CD
ist NUMBER-Datentyp- Ausführen
left join TABLE2 on TABLE1.ITM_CD = TABLE2.ITM_CD
Erträge ORA-01722: ungültige Nummer Fehler - Ausführen
left join TABLE2 on to_number(TABLE1.ITM_CD) = TABLE2.ITM_CD
auch ergibt ORA-01722 : ungültige Nummer Fehler.
- Ich vermute, das liegt daran, dass einer der Werte inTABLE1.ITM_CD
ist die Zeichenfolge „MIXED“ - Ausführen
left join TABLE2 on TABLE1.ITM_CD = to_char(TABLE2.ITM_CD)
erfolgreich läuft, aber es gibt leere Werte für die vonTABLE2
ausgewählten Feldern.
Hier ist eine vereinfachte Version meiner Arbeits query:
select
A.ITM_CD
,B.COST
,B.SIZE
,B.DESCRIPTION
,A.HOLD_REASON
from
TABLE1 a
left join TABLE2 b on a.ITM_CD = to_char(b.ITM_CD)
Diese Abfrage gibt eine Liste von Artikelcodes und Gründe halten, sondern nur leere Werte für die Kosten, die Größe und Beschreibungen. Und ich habe bestätigt, dass TABLE2
Werte für diese Felder für die zurückgegebenen Codes enthält.
UPDATE: Hier sind Bilder mit zusätzlichen Informationen.
wähle ich die folgenden Informationen von ALL_TAB_COLUMNS
-I nicht unbedingt wissen, was alle Felder bedeuten, dachte aber, es
können zeigen Sie in der questin eine Stichprobe von Zahlen in der TABLE1-Tabelle gespeichert? Was ist das Format dieser Zahlen? Haben sie einen Dezimalpunkt? – krokodilko
Aktualisiert mit Probe - und keine Dezimalstellen enthalten. –
warum nicht stattdessen eine to_number? –