wirreparieren: Formulardaten in MYSQL DB erfassen und verteilen

Beitrag lesen

Lösung gefunden, wenn auch nicht schön aber effektiv, Falls jemand da etwas braucht

drop table if exists v_tmp;
create Table v_tmp as (
select * from(
select 1 AS idtmp, max(Idsession) as IdSession, replace(replace(substring_index(dienstleistungen, ';', 1),substring_index(dienstleistungen, ';', 1 - 1),''),';','') as dienstleistung
from t_anfrage_web
where IdSession = (select max(IdSession) from t_anfrage_web)
union all
select 2 AS idtmp, max(Idsession) as IdSession, replace(replace(substring_index(dienstleistungen, ';',2),substring_index(dienstleistungen, ';', 2 - 1),''),';','') as dienstleistung
from t_anfrage_web
where IdSession = (select max(IdSession) from t_anfrage_web)
union all
select 3 AS idtmp, max(Idsession) as IdSession, replace(replace(substring_index(dienstleistungen, ';',3),substring_index(dienstleistungen, ';', 3 - 1),''),';','') as dienstleistung
from t_anfrage_web
where IdSession = (select max(IdSession) from t_anfrage_web)
union all
select 4 AS idtmp, max(Idsession) as IdSession, replace(replace(substring_index(dienstleistungen, ';',4),substring_index(dienstleistungen, ';', 4 - 1),''),';','') as dienstleistung
from t_anfrage_web
where IdSession = (select max(IdSession) from t_anfrage_web)
union all
select 5 AS idtmp, max(Idsession) as IdSession, replace(replace(substring_index(dienstleistungen, ';',5),substring_index(dienstleistungen, ';', 5 - 1),''),';','') as dienstleistung
from t_anfrage_web
where IdSession = (select max(IdSession) from t_anfrage_web)
) tmp where Dienstleistung != '');

insert into Tabelle_neu(idtmp, IdSession, dienstleistung) SELECT * from v_tmp  

Geht sicher zu optimieren,

Bis bald.