Cómo actualizar una base de datos SQLite con una búsqueda y reemplazo consulta?
-
21-08-2019 - |
Pregunta
Mis conocimientos de SQL es muy limitado, especialmente sobre SQLite, aunque creo que esta es la voluntad de ser una especie de consulta genérica ... O tal vez no por la búsqueda y reemplazo ...
Tengo esta base de datos SQLite en la música que tiene varios campos de golf, pero los más importantes aquí el "media_item_id" y "content_url".
Este es un ejemplo de un "content_url":
file:///c:/users/nazgulled/music/band%20albums/devildriver/%5b2003%5d%20devildriver/08%20-%20what%20does%20it%20take%20(to%20be%20a%20man).mp3
Busco una consulta que va a buscar las entradas como las que, en las "content_url" sigue ese patrón y reemplazarlo (el "content_url") con otra cosa.
Por ejemplo, un "content_url" genérico puede ser esta:
file:///c:/users/nazgulled/music/band%20albums/BAND_NAME/ALBUM_NAME/SONG_NAME.mp3
Y quiero reemplazar todas estas entradas con:
file:///c:/users/nazgulled/music/bands/studio%20albums/BAND_NAME/ALBUM_NAME/SONG_NAME.mp3
¿Cómo puedo hacerlo en una consulta?
P.S:. Estoy usando Firefox SQLite Manager (no pudo encontrar una mejor alternativa y gratuita para Windows)
Solución
Usted probablemente está buscando el replace
función.
Por ejemplo,
update table_name set
content_url = replace(content_url, 'band%20albums', 'bands/studio%20albums')
where
content_url like '%nazgulled/music/band_20albums/%';
Más documentación en http://sqlite.org/lang_corefunc.html