
02/05/2011, 16:14
|
| | Fecha de Ingreso: mayo-2011
Mensajes: 25
Antigüedad: 13 años, 10 meses Puntos: 1 | |
Respuesta: Reemplazar o borrar un "str" de un "str_list" Gracias tio, habia pensado que tenia que hacer algo como esto pero no creo que hubiera llegado a descubrirlo tan pronto como tu, seguiré trabajando tambien por si encuentro un metodo mas corto, aun estoy intentando entender que hace el 2 y el -2 pero para mañana seguro que lo entiendo
Muchas gracias
Pdta. Por favor no es necesario que respondas sin comer XD Cita:
Iniciado por leonardo_josue Hola mikexloo:
A estas horas de la tarde (4:30 pm en México) y con el estómago vacío no se me ocurren muchas cosas, pero prueba con esto;
Código MySQL:
Ver originalQuery OK, 0 rows affected (0.11 sec) mysql > insert into tabla_find values ('4,6,1,9,18'), ('1,11,111,11111,100001'),('21,31,41,51'); Query OK, 3 rows affected (0.05 sec) +-----------------------+ | texto | +-----------------------+ | 4,6,1,9,18 | | 1,11,111,11111,100001 | | 21,31,41,51 | +-----------------------+ ,', ','), 2, length(replace(concat(',', texto , ','), ',1,', ',')) - 2); Query OK, 2 rows affected (0.03 sec) +---------------------+ | texto | +---------------------+ | 4,6,9,18 | | 11,111,11111,100001 | | 21,31,41,51 | +---------------------+
En el ejemplo estoy eliminando los 1's, para eliminar algún otro elemento lo único que tendrías que cambiar es esta intrucción:
Código:
replace(concat(',', texto, ','), ',1,', ',')
la idea que se me ocurrió es concatenar una coma al inicio y fin de la cadena y buscar justamente el elemento entre comas (,1,) y sustituirlo por una (,). Al final con el substring "recortas" la cadena para eliminar las comas del inicio y fin de la cadena. Seguramente hay alguna otra forma de hacer esto mismo, optimizando código, pero de primera es lo único que se me ocurre. Si encuentro alguna otra solución mañana la posteo.
Saludos
Leo. |