2017-08-23 3 views
0

Ich arbeite mit Oracle SQL und ich bin ein Noob.Ausgabe in zwei verschiedenen Spalten basierend auf Feld Wert

table:example 
    +--------------+--------------+-------------+ 
    | id_nr  | code  | subtype  | 
    +-------------------------------------------+ 
    | 1445   | 40D1343  | DRG   | 
    | 1445   | 23423asas | PROC  | 
    | 1234   | 234.34K  | PROC  | 
    | 1233   | 2230S  | DRG   | 
    | 1233   | 996k   | DRG   | 
    | 1233   | 55239  | PROC  | 
    +--------------+--------------+-------------+ 

Basierend auf zwei Werten im Bereich Subtyp ('PROC' oder 'DRG'), der Code Feldwert aus der gleichen Zeile Ausgang in zwei verschiedenen Spalten werden soll ('PROC' ->ipc_code, 'DRG' ->asc_code).

table:example 
+--------------+-------------+-------------+-----------+ 
| id_nr  | subtype  | ipc_code | asc_code | 
+------------------------------------------------------+ 
| 1445   | DRG   |    | 40D1343 | 
| 1445   | PROC  | 23423asas |   | 
| 1234   | PROC  | 234.34K  |   | 
| 1233   | DRG   |    | 2230S  | 
| 1233   | DRG   |    | 996k  | 
| 1233   | PROC  | 55239  |   | 
+--------------+-------------+-------------+-----------+ 
+0

Was Sie bisher getan haben? –

Antwort

1

Sie wollen einfach nur case:

select id_nr, subtype, 
     (case when subtype = 'PROC' then code end) as ipc_code, 
     (case when subtype = 'DRG' then code end) as asc_code 
from t; 
+0

Danke, Bruder. Ich werde es am Montag überprüfen. –

Verwandte Themen