如何使用搜索和替换查询更新SQLite数据库?

时间:2009-06-30 04:13:52

标签: sql sqlite sql-update replace

我的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)。

1 个答案:

答案 0 :(得分:49)

您可能正在寻找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

的更多文档