Autor | Zpráva | ||
---|---|---|---|
microfox Profil * |
#1 · Zasláno: 14. 6. 2012, 11:02:17
Je to spíš technický dotaz než řešení kódu...
Otázka zní: "Jsem schopný zkopírovat řádky z tabulky_1 kde se nachází ve sloupci mejl neco@neco.cz do tabulky_2 ?? ja totiž nevim jak bude vypadat ta podmínka... Tipnul bych to že si SELECTEM načtu tabulku kde dám podmínku WHERE kde se budu dotazovat na daný mejl v té tabulce a pokud tam budou náké položky tak je chci zkopírovat do tabulky_2 - ideálně přesunout asi by to šlo přes INSERT ale to je když chci vkládat jeden řádek...co když jich chci vkládat víc...? asi to možná řešit přes pole, ale zatím mě moc nenapadá jak |
||
Tori Profil |
#2 · Zasláno: 14. 6. 2012, 11:09:21
Nejdřív si vytvořte SELECT, který vrátí přesně ta data, která chcete kopírovat. Pak to spojíte dohromady, manuál viz INSERT ... SELECT. Není to nic těžkého, jen je potřeba mít správně ten select a vybírat i ukládat sloupce ve stejném pořadí.
|
||
Someone Profil |
$s = mysql_query("SELECT * FROM tabulka_1 WHERE email = 'neco@neco.cz'"); while ($v = mysql_fetch_assoc($s)) { mysql_query("INSERT INTO tabulka_2(neco,neco2,neco3,email) VALUES('".$v['neco']."','".$v['neco2']."','".$v['neco3']."','".$v['email']."')"); } |
||
microfox Profil * |
#4 · Zasláno: 14. 6. 2012, 11:12:28 · Upravil/a: microfox
INSERT `tab2`SELECT (vypsane sloupecky ktere budu kopirovat) FROM `tab1`WHERE email='$email'
to je hezký, co když to není jen tab1 ? co když vycházím z tabulky která je spojovaná z dvou tabulek ? :-) Bude to vypadat takto? INSERT `tab2`SELECT (vypsane sloupecky ktere budu kopirovat) FROM `TK_AAA` INNER JOIN `TK_BBB` WHERE email='$email' šlo by to takto? Someone: Přesně tohle jsem našel někde a ono když těch položek je hodně tak by to dlouho trvalo... http://blog.zdenekvecera.cz/item/mysql-jak-prekopirovat-presunout-radky-do-jine-tabulky |
||
Tori Profil |
INSERT INTO `tab2` (sloupecky) SELECT (sloupecky) FROM `TK_AAA` INNER JOIN `TK_BBB` ON podminka spojeni WHERE email='$email' |
||
microfox Profil * |
#6 · Zasláno: 14. 6. 2012, 11:33:47
a tvrzení že tohle řešení je lepší než kolega uvedl výše je správné? já osobně vidím tohle za lepší řešení...kratší...u tamtoho předchozího by se ten script vykonával poměrně dlouho kdyby se mělo zpracovávat mraky dat
|
||
Tori Profil |
#7 · Zasláno: 14. 6. 2012, 11:46:24
microfox:
Pokud není potřeba ta data mezi načtení a uložením nějak složitěji upravovat, není důvod to provádět oklikou přes PHP po jednom řádku. Kromě rychlosti tím šetříte paměť - data ze SELECTu se nemusejí tahat z MySQL do PHP. |
||
Časová prodleva: 12 let
|
0