Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
Hank
63 / 54 / 4
Регистрация: 28.12.2011
Сообщений: 297
#1

Sqlite выборка по маске - Программирование Android

25.04.2014, 13:43. Просмотров 1377. Ответов 13
Метки нет (Все метки)

Подскажите, имеется ли в sqlite возможность выборки данных по маске?
Например (для SQL Server), select * from words where word like '[ПР]И_'.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.04.2014, 13:43
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Sqlite выборка по маске (Программирование Android):

SQLite и выборка по условию
SQLite не работает выборка по условию Устройство или ОС, прошивка: LG d380 ...

Выборка по датам в SQLite
Много страниц прочитал по этому вопросу, но мнения людей расходятся. Кто-то...

Выборка с базы данных SQLite
Доброго времени суток ребята. Занимаюсь простым приложением, что-то типа...

Выборка данных за последние 24 часа SQLite
Необходимо получить данные из базы SQLite за последние 24 часа. В базе одна...

Парсить строку по маске
Гуру, подскажите инструмент! Есть строка вида "фыва<asdf123>"йцук Надо...

Выборка данных по битовой маске
Здравствуйте. У меня есть приложение, которое хранит в БД выбранные...

13
YuraAAA
1578 / 1319 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 2
25.04.2014, 14:27 #2
Hank, есть. Точно также будет
0
Hank
63 / 54 / 4
Регистрация: 28.12.2011
Сообщений: 297
25.04.2014, 14:37  [ТС] #3
Что-то не контачит. И ошибку в запросе не показывает и результат не дает. Если скобки убрать и написать, например, так
SQL
1
SELECT * FROM words WHERE word LIKE 'ПИ_'
то тогда работает, как будто он их за обычные символы принимает.
0
Gabberr
103 / 103 / 19
Регистрация: 13.10.2009
Сообщений: 404
25.04.2014, 14:54 #4
у меня вот так отлично работает :
Java
1
2
3
Cursor c = DBFactory.instance().doRawQuery(
                            "SELECT _id,name,lat,lon FROM places WHERE name LIKE '"
                                    + name.getText().toString() + "'");
0
Hank
63 / 54 / 4
Регистрация: 28.12.2011
Сообщений: 297
25.04.2014, 15:04  [ТС] #5
у меня вот так отлично работает :
что при этом у вас содержится в name?
0
Gabberr
103 / 103 / 19
Регистрация: 13.10.2009
Сообщений: 404
25.04.2014, 15:19 #6
Обычно однословнй руский/английский текст, не эксперементировал со спец символами
0
Hank
63 / 54 / 4
Регистрация: 28.12.2011
Сообщений: 297
25.04.2014, 15:25  [ТС] #7
В том то и дело, Gabberr, что обычный однословный текст и у меня ищет, но мне это не подходит - требуется выбор из перечня символов.
0
YuraAAA
1578 / 1319 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 2
25.04.2014, 16:02 #8
Hank, ну так и используйте регулярное выражение.

SQL
1
WHERE x REGEXP <regex>
Gabberr, кстати, на всякий случай, LIKE является case insensetive для латинских символов, но case sensetive для русских.

Добавлено через 46 секунд
http://www.sqlite.org/lang_expr.html
1
Hank
63 / 54 / 4
Регистрация: 28.12.2011
Сообщений: 297
19.05.2014, 00:00  [ТС] #9
Цитата Сообщение от YuraAAA Посмотреть сообщение
ну так и используйте регулярное выражение.
Сорри за долгий ответ. Может кто подкинет примерчик использования? Погуглил, но что-то не врубился как использовать этот механизм.
0
Hank
63 / 54 / 4
Регистрация: 28.12.2011
Сообщений: 297
04.06.2014, 16:08  [ТС] #10
Вопрос все еще актуален, поэтому выслушаю любые мысли по данной проблеме.
Нужно ли самому функцию писать или можно что-то вроде такого использовать:
SQL
1
SELECT f FROM t WHERE f REGEXP '123'
Если второе, то у меня не получилось - не знает sqlite функции REGEXP
0
dubok79
324 / 122 / 10
Регистрация: 01.11.2012
Сообщений: 586
05.06.2014, 18:52 #11
А чем вас не устраивает символ %. Что вы хотите получить? Может его достаточно будет?
Обычно я пишу, например, LIKE '%ам%т%'

Добавлено через 5 минут
P.S. SQLite знает REGEXP
P.S.S Тут сказано как пользовать и про ошибку вашу тоже написано.

Сам не пробовал...
0
YuraAAA
1578 / 1319 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 2
05.06.2014, 18:56 #12
dubok79,
Цитата Сообщение от dubok79 Посмотреть сообщение
P.S. SQLite знает REGEXP
знает, но по умолчанию не понимает его надо как-то подключать
0
dubok79
324 / 122 / 10
Регистрация: 01.11.2012
Сообщений: 586
05.06.2014, 18:57 #13
Да , почитал уже на stackoverflow, только пока не пробовал.
0
Hank
63 / 54 / 4
Регистрация: 28.12.2011
Сообщений: 297
07.06.2014, 00:39  [ТС] #14
Цитата Сообщение от dubok79 Посмотреть сообщение
А чем вас не устраивает символ %
Символ % меня устраивает всем, но только не в рамках моей задачи, а именно - мне нужно получить из БД слова, которые можно составить из набора следующих букв, например, "АОЗЫЛУИЕНТАРЫВШ". Причем если какой-то символ в наборе присутствует несколько раз, в данном случае это буква А, то и в слове она может встречаться не более двух раз.
Возможно задача легко решается стандартными средствами SQLITE, но пока мне не удалось его воплотить в жизнь.
0
07.06.2014, 00:39
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.06.2014, 00:39
Привет! Вот еще темы с решениями:

Выборка значений из Access по маске
Доброго времени суток, затронул вопрос работы с Базой Данных ( Access ),...

Выборка данных из БД по маске вызывает ошибку
Доброго все времени, дорогие друзья! Итак, вопрос по сути простой, но...

Выборка файлов по маске, копирует выбранный файл дважды
Добрый день. Есть такой вот метод выборки. for /r %userprofile%\Documents\...

Выборка в sqlite
Подскажите как сделать выборку в sqlite Делаю так,не получается ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru