SQL para convertir string separados por comas en una tabla




SET @tu_string = 'Enero,Febrero,Marzo,Abril,Mayo,Junio,Julio,Agosto,Septiembre,Octubre,Noviembre,Diciembre';

SELECT 
    SUBSTRING_INDEX(SUBSTRING_INDEX(@tu_string, ',', numbers.n), ',', -1) AS columna,
    @correlativo := @correlativo + 1 AS correlativo
FROM (
    SELECT
        (@rn := @rn + 1) AS n
    FROM
        (SELECT 0 UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4) t1,
        (SELECT 0 UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4) t2,
        (SELECT 0 UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4) t3,
        (SELECT 0 UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4) t4,
        (SELECT @rn := 0) t5
    WHERE @rn < LENGTH(@tu_string) - LENGTH(REPLACE(@tu_string, ',', '')) + 1
) numbers, (SELECT @correlativo := 0) AS init
ORDER BY correlativo;

Comentarios

Lo Más Popular