Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Есть ли в MS SQL команда проверки нахождения в строке значения из списка?

Виктория Дутова Профи (758), на голосовании 2 года назад
То есть
Есть текстовое поле "Рандомный тескт 145 13 привет как дела"
Есть список значений (раунд,14, 17,как, ура)
Если хоть одно значение из списка есть в тексте - выбрать строку

Или есть способ оптимально сделать эту проверку?
Голосование за лучший ответ
urakul Hao Мастер (2226) 2 года назад
Ну так where поле = значение or поле = значение or....
Jurijus Zaksas Искусственный Интеллект (445791) 2 года назад
Либо так:

... where YourField like '%SomeString1%' or YourField like '%SomeString2%' or ...

Либо занести значения в другую таблицу и сделать достаточно медленный и в целом уродский джойн:

... from YourTable t1, StringTable t2 where t1.YourField like '%'||t2.ValueField||'%'
myodo.ru Мудрец (12806) 2 года назад
MS SQL поддерживает регулярные выражения. если с реализацией не напортачили, должно работать быстро.

правда это мекломягкие, не через одно место они сделать не могут. потому синтаксис нестандартный.
Похожие вопросы