By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
CREATE TABLE table_name (ID,SUPPLIER_GROUP1,SUPPLIER1,SUPPLIER_GROUP2,SUPPLIER2) AS
SELECT 1, 'sg1.1', 's1.1', 'sg2.1', 's2.1' FROM DUAL UNION ALL
SELECT 2, 'sg1.2', 's1.2', 'sg2.2', 's2.2' FROM DUAL UNION ALL
SELECT 3, 'sg1.3', 's1.3', 'sg2.3', 's2.3' FROM DUAL
3 rows affected
SELECT *
FROM table_name
UNPIVOT (
(supplier_group, supplier) FOR type IN (
(supplier_group1, supplier1) AS 1,
(supplier_group2, supplier2) AS 2
)
)
ID | TYPE | SUPPLIER_GROUP | SUPPLIER |
---|---|---|---|
1 | 1 | sg1.1 | s1.1 |
1 | 2 | sg2.1 | s2.1 |
2 | 1 | sg1.2 | s1.2 |
2 | 2 | sg2.2 | s2.2 |
3 | 1 | sg1.3 | s1.3 |
3 | 2 | sg2.3 | s2.3 |