Jeg har en CASE statement, som jeg ikke kan få til at virke, og hvordan får jeg denne til at virke:
(CASE WHEN tabel1.column1 = tabel2.column2 THEN tabel1.column1
WHEN SUBSTR(tabel1.column1,1,11) = tabel2.column2 THEN SUBSTR(tabel1.column1,1,11)
WHEN SUBSTR(tabel1.column1,1,10) = tabel2.column2 THEN SUBSTR(tabel1.column1,1,10)
WHEN SUBSTR(tabel1.column1,1,9) = tabel2.column2 THEN SUBSTR(tabel1.column1,1,9)
WHEN SUBSTR(tabel1.column1,1,8) = tabel2.column2 THEN SUBSTR(tabel1.column1,1,8)
WHEN SUBSTR(tabel1.column1,1,7) = tabel2.column2 THEN SUBSTR(tabel1.column1,1,7)
WHEN SUBSTR(tabel1.column1,1,6) = tabel2.column2 THEN SUBSTR(tabel1.column1,1,6)
WHEN SUBSTR(tabel1.column1,1,5) = tabel2.column2 THEN SUBSTR(tabel1.column1,1,5)
WHEN SUBSTR(tabel1.column1,1,4) = tabel2.column2 THEN SUBSTR(tabel1.column1,1,4)
WHEN SUBSTR(tabel1.column1,1,3) = tabel2.column2 THEN SUBSTR(tabel1.column1,1,3)
WHEN SUBSTR(tabel1.column1,1,2) = tabel2.column2 THEN SUBSTR(tabel1.column1,1,2)
WHEN SUBSTR(tabel1.column1,1,1) = tabel2.column2 THEN SUBSTR(tabel1.column1,1,1)
ELSE NULL
END)
= tabel2.column2 (+)
HVIS jeg fjerner (+) fra den sidste linje vil jobbet godt køre, men der mangler nogle records. den kommer med fejlen "ORA-01417:a table may be outer joined to at most one other table" den bliver ikke tilknyttet andet i jobbet. det er pga. man stater SUBSTR(tabel1.column1,1,x) = tabel2.column2 i CASE statementen. men hvordan kommer man uden om dette??? på forhånd TAK