[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Consulta sobre SQL



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Wed, Aug 13, 2003 at 09:34:12AM +0200, Rafael Ramirez wrote:

>> Ya ya, pero hacer esto con 5000 registros en una pasada. Mi intencion 
>> es  poder hacer usando algun comodín
 
> Ups! Creo que no sé lo que quieres hacer. No tiene todos los registros
> esa cadena en común?


La mayoría sí tienen esa cadena en el campo texto, pero la historia 
está en que esa cadena no va sola, sino insertada en otra más grande. Cómo 
puedo cambiar dicha cadena, conservando intacta la cadena de mayor tamaño 
que la contiene?

- --------------------------------------------------------------------------
Respuesta a la continuación del hilo
- ---------------------------------------------------------------------------

Entonces creo que una posible solución es hacer uso de la siguiente 
función dentro del update:

REPLACE(str,from_str,to_str)
    Returns the string str with all occurrences of the string from_str 
    replaced by the string to_str:

SELECT REPLACE('www.mysql.com', 'w', 'Ww');
- -> 'WwWwWw.mysql.com'

Aunque creo que seguiremos teniendo el mismo problema


Otra solución un poco más chapucera. Seleccionar la columna a cambiar y 
almacenarla en un archivo. Modificar el archivo externamente con un 
script en perl que sería bastante sencillo y una vez modificado, volver 
a insertar el contenido del archivo en la columna deseada con un update.

SELECT campo FROM tabla INTO OUTFILE "/tmp/result.text";

Tratar el archivo con el script

UPDATE tabla
SET campo=LOAD_FILE("/tmp/result.text")
WHERE condicion;



Espero que no sea muy grande el desvarío.
Saludos, Eduardo.




-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)

iD8DBQE/OgPf8+jGkL36kP0RAkg9AKC4uu7lkGN41akMk1ks5L06vMc2uwCgieIl
6PCR9MUsAfaC+/bylnU1H5s=
=1YPM
-----END PGP SIGNATURE-----



Reply to: