SQL As Understood By SQLiteによると、SQLiteのクエリで文字列置換をするには、replace関数を使えばよい。
“irc/logs/XXXX” を “logs/irc/XXXX” に置換しようとすると
sqlite> select sqlite_version(*) ;
3.3.6
sqlite> select replace(name,'irc/logs/','logs/irc/') from wiki where name like 'irc/logs%';
SQL error: no such function: replaceSQLite3.3.6ではサポートしてないのかな?orz 仕方がないのでsubstrと文字列結合(||)で対処。
select 'logs/irc/' || substr(name,12,1000) from wiki where name like 'irc/logs%';
logs/irc/.02.14お。うまくいった。
全部updateする。
update wiki set name = 'logs/irc/' || substr(name,12,1000) where name like 'irc/logs%';おしまい。
