Autor | Zpráva | ||
---|---|---|---|
had Profil * |
#1 · Zasláno: 24. 10. 2011, 19:49:49
Ahoj,
prosím vás - nevíte někdo, prosím, jakým způsobem odstranit z tabulky všechny závorky a obsah v nich? Mám sloupec (cz), ve kterém mám textové řetězce a potřeboval bych všude vyhledat a nahradit text v závorkách. Umím text najít, umím nahradit konkrétní text, ale neumím nahradit proměnlivý text... UPDATE opravit SET cz = REPLACE(cz, cz REGEXP '%(%)%', '') Díky! |
||
Tori Profil |
#2 · Zasláno: 24. 10. 2011, 19:56:48
A věděl byste to udělat v PHP - v cyklu načíst, nahradit, uložit? Je to sice trochu oklika, ale když to má být jednorázová hromadná změna dat, tak bych to neřešila. (Btw čím se to má nahrazovat? Anebo zcela odstranit vše mezi závorkami včetně nich?)
|
||
Kajman_ Profil * |
#3 · Zasláno: 24. 10. 2011, 22:04:03
Šlo by to trochu pracně i v myslq, použijte opakovaně
substr(), locate() a concat() Nejlépe v uložené proceduře (funkci). Pokud to máte v oracle nebo postresql, tak tam existuje regulární replace. |
||
had Profil * |
#4 · Zasláno: 25. 10. 2011, 14:27:19
Tori: hm... vyskytuje se to celkem v 1 000 případech. Možná by to bylo nejlepší řešení přes PHP, sice nevím přesný reg. výraz (já se s regulárama špatně domluvím), ale někde to najdu. :-)
Jinak se to má uplně odstranit včetně závorek. Jo...a v některých případech chybí jedna ze závorek, ale většinou jsou obě (260 případů). Kajman_: je to mysql 5.5 |
||
Tori Profil |
#5 · Zasláno: 25. 10. 2011, 14:50:32
|
||
Časová prodleva: 12 let
|
0