2016-09-22 15 views
0

Ich habe zwei Tabellen mit den folgenden DatenTransponieren Spalten in Zeilen - Teradata

TABLEA 
TYPES COLUMNA COLUMNB COLUMNC 
DART 8.00  9.00 10.00 

TABLEB 
TYPES DESCP ACNT 
DART COLUMNA 14000 
DART COLUMNB 15000 
DART COLUMNC 16000 

Meine erwartete Ausgabe ist

TYPES AMT ACNT 
DART 8.00 14000 
DART 9.00 15000 
DART 10.00 16000 

ich den folgenden Code geschrieben haben, der Ausgang

SELECT X.TYPES, 
CASE WHEN DESCP='COLUMNA' THEN COLUMNA 
WHEN DESCP='COLUMNB' THEN COLUMNB 
WHEN DESCP='COLUMNC' THEN COLUMNC ELSE NULL END AMT, 
B.ACNT 
FROM 
TABLEA X 
JOIN 
TABLEB Y 
ON X.TYPES=Y.TYPES 
zu erhalten

Dies sind nur Beispieldaten und es gibt ungefähr 10 Arten und mehr als 10 Spalten. Gibt es neben dem Schreiben von Fallanweisungen noch eine andere Option, um alle Spalten einzubeziehen, um dies zu erreichen? Danke

+1

Die 'case' Anweisung ist wahrscheinlich der beste Weg zu gehen. –

+0

Fallausdruck, keine Aussage ... – jarlh

Antwort

Verwandte Themen