powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Как в SQLite искать вне зависимости от регистра
6 сообщений из 6, страница 1 из 1
Как в SQLite искать вне зависимости от регистра
    #37614722
Volgar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Переношу онлайн базу на десктоп. База одна и та же.
"SELECT DISTINCT A.Name FROM son AS A WHERE A.Name LIKE '%".$searchText."%'" так было на mySQL, тоже самое пишу в SQLite.
Например, если $searchText = "вино", то в первом случае 9 вариантов, а SQLite находит только 4.

При этом он не находит "Вино", "Виноградник" и т. п. результаты из заглавных букв. Базу неохота переписывать.
...
Рейтинг: 0 / 0
Как в SQLite искать вне зависимости от регистра
    #37614848
maximand
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Volgar,

Патчить надо или свою функцию писать.
http://www.sql.ru/forum/actualthread.aspx?tid=527284
Под виндовз есть сборки с поддержкой UTF
Гуглим
SQLite ICU UNICODE
http://www.sql.ru/forum/actualthread.aspx?tid=837082
...
Рейтинг: 0 / 0
Как в SQLite искать вне зависимости от регистра
    #37614879
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
SELECT DISTINCT A.Name FROM son AS A WHERE lower(A.Name) LIKE lower('%".$searchText."%'")
...
Рейтинг: 0 / 0
Как в SQLite искать вне зависимости от регистра
    #37614990
Volgar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
White Owl, спасибо.
Пробовал, но почему-то не сработало. Пришлось изголяться и делать два запроса с разными заглавными буквами, а потом объединять результаты.
...
Рейтинг: 0 / 0
Как в SQLite искать вне зависимости от регистра
    #37620755
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
White Owl
Код: sql
1.
SELECT DISTINCT A.Name FROM son AS A WHERE lower(A.Name) LIKE lower('%".$searchText."%'")



Чтобы lower() работала с юникодом, нужна поддержка юникода :)
...
Рейтинг: 0 / 0
Как в SQLite искать вне зависимости от регистра
    #37620764
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
Если кроссплатформенность не интересует, и нужна поддержка только базового юникода - см.

** type: C extension for SQLite3
**
** implements: fuzzy Unicode string search
** locale-invariant Unicode support for casing and collation
**
** warning: uses Windows CompareStringW() comparison function
**
** notes: this loadable extension is currently intended to be built as a
** single Win32 DLL file. This is a work in progress, bear with it.

http://sqlite.mobigroup.ru/dir?name=ext/_unifuzz

У меня в репозитории расширение помечено как удаленное, т.к. винду я уже много лет как даже в кошмарных снах не вижу :) Возможно, у автора можно найти и более новую версию, но и эта работала.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Как в SQLite искать вне зависимости от регистра
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]