![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Подскажите пожайлусата. можно ли организовать поиск в текстовом [MSSQL]
svt © (2006-11-06 10:42:00)Подскажите пожайлусата. можно ли организовать поиск в текстовом поле без учета регистра. Если да то подскажите как.
Может существует специальная функция или что-то подобное. пока я не нашел. Заранее спасибо
sniknik (2006-11-06 12:04:00) [21]вообще серьёзные sql сервера такие как MSSQL поддерживают коллатионы (настройки и способы обработки для различный языков), то что учитывает/не учитывает регистр зависит от них, с каким COLLATE поле создано, если нужно чтобы не учитывало то лучше его пересоздать, если это редко (всегда учитываем, а в одно случае нет), то можно явно в запросе указать какой COLLATE использовать для этого конкретного случая.
это предпочтительнее чем Upper т.к. Upper это уже вычисление, индексы по вычисляемым не используются.
за подробностями в BOL.
svt (2006-11-06 11:38:00) [22]
> без учета регистра
пробовал... учитывает .... так что чере аппер будем реализовывать. сапсибо за совет. (и опять ... все гениальное - просто)
Stanislav (2006-11-06 11:25:00) [23]svt (06.11.06 11:09) [3]
Ты попробуй у тебя like ищет записи без учета регистра, если нет, то придется использовать UPPER.
svt (2006-11-06 11:09:00) [24]весьма благодарен... но на сколько я понимаю это замедлид сам процесс поиска?
Desdechado (2006-11-06 10:59:00) [25]WHERE Upper(fld) LIKE Upper( '%абВгд%' )
Но помни, индексы при этом использоватьсяне будут (если, конечно, они не построены по функции UPPER).
Stanislav (2006-11-06 10:52:00) [26]WHERE POLE like '%ghghg%', Только у тебя должна быть кодировка не учитывающая регистр, на сколько я знаю.