Sé muy poco sobre las consultas SQL, pero necesito una consulta para reemplazar '\\'
con '\/'
Tengo una base de datos de Wordpress donde hay caracteres en una cadena de texto larga que se ven así en phpMyAdmin Browse.
'\\sube\\fotos\\'
Tiene que ser '\/uploads/photos\/'. Quiero una consulta para encontrar '\\subidas\\fotos\\' para asegurarme de que la consulta funciona.
También quiero otra consulta para reemplazar permanentemente '\\cargas\\fotos\\' con '\/cargas\/fotos\/'.
La siguiente consulta que encuentra photos
devuelve resultados, pero eso es todo lo que tengo.
SELECT * FROM `mytable` WHERE `mycolumn` LIKE '%photos%'
¡Gracias forpas por la excelente solución!
Para futuros lectores:
Cuando migré mi base de datos de wordpress de local en línea, el complemento de migración todo en uno perdió las rutas en la galería de complementos maravillosos que estoy usando. Por lo tanto, mi requisito para la consulta.
Este texto \ con barra invertida doble estaba en una cadena larga y me preocupaba que hubiera más barras invertidas dobles que pudieran cambiarse. Entonces, agregando a la solución provista por forpas, apunté con mayor precisión al texto de la ruta. mytable en realidad se llamaba wp_nonxenon_wonderplugin_gridgallery, y mycolumn se llamaba data. Esta es la consulta resultante que me ahorrará mucho trabajo en el futuro.
ACTUALIZAR wp_nonxenon_wonderplugin_gridgallery SET data = REPLACE(data, 'wp-content\\uploads\\photos\\', 'wp-content\/uploads\/photos\/') DONDE los datos LIKE '%photos%';
Debe escapar de cada barra invertida con una barra invertida doble:
SELECT REPLACE(mycolumn, '\\\\', '\\/') FROM mytable WHERE mycolumn LIKE '%photos%';
O puede actualizar la tabla:
UPDATE mytable SET mycolumn = REPLACE(mycolumn, '\\\\', '\\/') WHERE mycolumn LIKE '%photos%';
y la columna contendrá los valores que desee.
Ver la demostración .