Serwis od chwili migracji ciągle żyje więc muszę to zrobić na żywym organizmie. Proszę o pomoc
Stara tabela:
CREATE TABLE `ksiega` ( `id_ksiega` int(10) NOT NULL AUTO_INCREMENT, `id_book` varchar(10) NOT NULL, `masa` varchar(10) NOT NULL, `masa1` varchar(10) NOT NULL, `masa2` varchar(10) NOT NULL, `forma` varchar(50) NOT NULL, `forma1` varchar(50) NOT NULL, `forma2` varchar(50) NOT NULL, `cena` text NOT NULL, `cena1` text NOT NULL, `cena2` text NOT NULL, `zwrot` text NOT NULL, `zwrot1` text NOT NULL, `zwrot2` text NOT NULL, `waluta` varchar(5) NOT NULL, `waluta1` varchar(5) NOT NULL, `waluta2` varchar(5) NOT NULL, `spr` text NOT NULL, `spr1` text NOT NULL, `spr2` text NOT NULL, `imie_nazwisko` text CHARACTER SET utf8 COLLATE utf8_polish_ci NOT NULL, PRIMARY KEY (`id_ksiega`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=14095 ;
Nowa tabela:
CREATE TABLE `tab` ( `id_tab` int(10) NOT NULL AUTO_INCREMENT, `id_book` int(10) NOT NULL, `ilosc` text NOT NULL, `login` varchar(30) NOT NULL, `masa` varchar(10) NOT NULL, `forma` varchar(50) NOT NULL, `cena` text NOT NULL, `zwrot` text NOT NULL, `waluta` varchar(5) NOT NULL, `spr` text NOT NULL, `imie_nazwisko` text CHARACTER SET utf8 COLLATE utf8_polish_ci NOT NULL, PRIMARY KEY (`id_tab`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=792 ;
Po konwersji rozbijałem jeden rekord na trzy (np. masa, masa1, masa2 itd) zapomniałem o polach forma, forma1,forma2 - chcę uzupełnić nowa tabelę o wartości z tych pól
Próbuję tak, ale średnio mi wychodzi:
UPDATE tab LEFT JOIN ksiega ON (tab.id_book=ksiega.id_book AND (SELECT DISTINCT tab.id_book FROM (SELECT max(id_tab) FROM tab ) AS m) ) SET tab.forma=ksiega.forma