Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.24;
Скачать: CL | DM;

Вниз

Поиск без регистра   Найти похожие ветки 

 
Гость   (2004-09-25 10:55) [0]

Выполняю запрос
SELECT * FROM TABLE WHERE NAME LIKE "%text%"

Как сделать поиск нечувствительный к регистру букв... Т.е. если я ищу слово text, выводилось как text, так и Text, TEXT ?


 
sniknik ©   (2004-09-25 11:29) [1]

зависит от движка
есть которие и так все это выдадут ...
а те которые нет
SELECT * FROM TABLE WHERE UpperCase(NAME) LIKE "%TEXT%"
функция тоже зависит от движка. аналоги - UpperCase/UCase/Upper/... может и еще чего нибудь, читай справку по движку.


 
kaif ©   (2004-09-26 04:19) [2]

В IB:
SELECT * FROM TABLE1 WHERE Upper(NAME) LIKE "%TEXT%"
Есть еще конструкция с CONTAINING. Она вообще нечувствительна к регистру букв.
SELECT * FROM TABLE1 WHERE NAME CONTAINING "text"
Так можно искать даже в MEMO-полях и опять невзирая на регистр букв. Правда я замечал, что LIKE и CONTAINING дают разные скорости поиска. Отличие может достигать 50%. Причем в каких-то ситуациях быстрее CONTAINING, а в каких-то LIKE. Так что сравни еще результаты по скорости.
Если UPPER не заработает, проверь, работает ли сама функция UPPER
SELECT UPPER(NAME) FROM TABLE1
Если она не работает, значит поле NAME имеет неправильный CHARACTER SET или COLLATE.


 
Гость   (2004-09-26 16:25) [3]

Ну... использую FB 1.5
функция UPPER не работает, причем перебрал все CHARACTER SET и COLLATE...

А CONTAINING тоже ищет с учетом регистра... Если указываю "text", то и найдет он мне "text", а "Text" пропустит :(



Страницы: 1 вся ветка

Текущий архив: 2004.10.24;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.041 c
1-1096554966
Devel
2004-09-30 18:36
2004.10.24
AV при использовании TXMLDocument


14-1097060126
Рамиль
2004-10-06 14:55
2004.10.24
Захват ролей котроллеров домена


4-1095419377
Квэнди
2004-09-17 15:09
2004.10.24
Трей


1-1096997019
Knoxville
2004-10-05 21:23
2004.10.24
Разделение строки на части


4-1095356627
cerber1
2004-09-16 21:43
2004.10.24
Сканер СОМ порта