split_part()
hace lo que quieres en un solo paso:
SELECT split_part(col, ',', 1) AS col1
, split_part(col, ',', 2) AS col2
, split_part(col, ',', 3) AS col3
, split_part(col, ',', 4) AS col4
FROM tbl;
Agregue tantas líneas como elementos tenga en col
(el máximo posible).
Las columnas que excedan los elementos de datos serán cadenas vacías (''
).