2015-12-27 4 views
0

У меня есть база данных словаря sqlite с таблицей «eng» и столбцом «defn». данных в "defn" такова:Удалить строку после определенного символа SQlite

/(v5r, В.Т.) (Великобритания), чтобы срывать/выбрать/отрывать

/(п) (Великобритания) (см ほ ぞ 穴) шип/зубчатое/ласточкин хвост/поворота

/(прил-нет) двуязычные/на двух языках

Что мне нужно, чтобы удалить все символы после первого «)». Результат должен быть что-то вроде этого:

/(v5r, В.Т.)

/(п)

/(прил-нет)

Я не думал об использовании SUBSTR, но проблема в том, что в каждой строке длина слова внутри «()» различна. И/(некоторое слово) существуют в каждой строке столбца.

Не мог ли кто-нибудь любезно предложить мне лучший способ сделать это? Заранее спасибо.

ответ

1

instr() function возвращает позицию в строке:

substr(defn, instr(defn, ')') + 1) 
+0

Будьте осторожны с тем, что происходит, если нет '' '') '' '' 'на данной строке ... [Это будет только дать первый символ. CASE - это то, что вам нужно, если вы хотите это решить. Например: http://stackoverflow.com/questions/23711312/conditional-value-in-sqlite-column – swa66

Смежные вопросы