Hi All ,
I want to convert two rows into one row. I am giving the sample of data. Can you please help us to find the output.
Database version : Oracle Database 19c Enterprise Edition Release 1.
Sample Data : input
Input
ID name code Date
1 A AA 1/1/2020
2 A BB 1/1/2020
3 B AA 2/1/2020
4 B BB 2/1/2020
5 C AA 3/1/2020
6 C BB 3/1/2020
7 D AA 4/1/2020
8 D BB 4/1/2020
9 E AA 5/1/2020
10 E BB 5/1/2020
Query for sample data : WITH SAMPLE_DATA AS
(SELECT 1 ID,'A' NAME,'AA' CODE ,'01-JAN-2020' DT FROM DUAL UNION ALL
SELECT 2 ID,'A' NAME,'AA' CODE ,'01-JAN-2020' DT FROM DUAL UNION ALL
SELECT 3 ID,'B' NAME,'AA' CODE ,'01-FEB-2020' DT FROM DUAL UNION ALL
SELECT 4 ID,'B' NAME,'AA' CODE ,'01-FEB-2020' DT FROM DUAL UNION ALL
SELECT 5 ID,'C' NAME,'AA' CODE ,'01-MAR-2020' DT FROM DUAL UNION ALL
SELECT 6 ID,'C' NAME,'AA' CODE ,'01-MAR-2020' DT FROM DUAL UNION ALL
SELECT 7 ID,'D' NAME,'AA' CODE ,'01-APR-2020' DT FROM DUAL UNION ALL
SELECT 8 ID,'D' NAME,'AA' CODE ,'01-APR-2020' DT FROM DUAL UNION ALL
SELECT 9 ID,'E' NAME,'AA' CODE ,'01-MAY-2020' DT FROM DUAL UNION ALL
SELECT 10 ID,'F' NAME,'AA' CODE ,'01-MAY-2020' DT FROM DUAL
) SELECT * FROM SAMPLE_DATA
Input
Output
ID_1 Id_2 name code_1 Code_2 date
1 2 A AA BB 1/1/2020
3 4 B AA BB 2/1/2020
5 6 C AA BB 3/1/2020
7 7 D AA BB 4/1/2020
9 10 E AA BB 5/1/2020