как удалить символы из строки в базе данных sqlite3?

У меня есть строка, подобная этой a) текст в моей базе данных sqlite..я хочу удалить a) из databse..кто знает запрос для этого?

3 ответов


ответ@laalto близок, но он не будет работать в крайних случаях, в частности, если 'a) ' происходит в другом месте в строке. Вы хотите использовать SUBSTR чтобы удалить только первые 3 символа.

sqlite> SELECT REPLACE ("a) I have some information (or data) in the file.", "a) ", "");
I have some information (or datin the file.

sqlite> SELECT SUBSTR ("a) I have some information (or data) in the file.", 4);
I have some information (or data) in the file.

Итак, обновляя свой запрос, он должен превратиться в:

UPDATE tbl SET col=SUBSTR(col, 4) WHERE col LIKE 'a) %';

... отмечая, что строки индексируются из 1 в SQLite.


можно использовать REPLACE также удалить части строки:

UPDATE tbl SET col=REPLACE(col, 'a) ', '') WHERE col LIKE 'a) %';

Я думаю, что этот код поможет вам.

UPDATE TABLE_NAME SET COLUMN_NAME=REPLACE(COLUMN_NAME,'xxx','') WHERE COLUMN_NAME LIKE 'xxx%;

из приведенного выше кода " xxx " ваша нежелательная строка, которая заменяется ", когда строка начинается с xxx всей строки в столбце, который вы будете выбраны.