Подтвердить что ты не робот

Как обновить базу данных SQLite с помощью запроса на поиск и замену?

Мои знания SQL очень ограничены, особенно о SQLite, хотя я считаю, что это будет своего рода общий запрос... Или, может быть, не из-за поиска и замены...

У меня есть эта музыкальная база данных в SQLite, которая имеет разные области, но важными здесь являются "media_item_id" и "content_url" .

Вот пример "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

Я ищу запрос, который будет искать записи, подобные тем, где "content_url" следует этому шаблону и заменяет его ( "content_url" ) чем-то другим.

Например, общий "content_url" может быть следующим:

file:///c:/users/nazgulled/music/band%20albums/BAND_NAME/ALBUM_NAME/SONG_NAME.mp3

И я хочу заменить все эти записи:

file:///c:/users/nazgulled/music/bands/studio%20albums/BAND_NAME/ALBUM_NAME/SONG_NAME.mp3

Как я могу сделать это в одном запросе?

P.S: Я использую Firefox SQLite Manager (не могу найти лучшую и бесплатную альтернативу для Windows).

4b9b3361

Ответ 1

Вероятно, вы ищете функцию replace.

Например,

update table_name set 
  content_url = replace(content_url, 'band%20albums', 'bands/studio%20albums')
where
  content_url like '%nazgulled/music/band_20albums/%';

Дополнительная документация на http://sqlite.org/lang_corefunc.html