SQL-поиск по началу слова

Я хочу написать инструкцию SQL SERVER, которая ищет начало слова в строке, которая начинается с чего-то.

например, если я ищу 'em' в записи компании, я должен получить:

Emily, Inc

В Emmmy

не

Забыть

Лемминг", ООО"

Я могу сделать это в PHP, извлекая/нарезая строку в массив и ища начало каждого слова. Но как я напишет ли этот запрос в SQL server, не прибегая к хранимым процедурам / функциям?

3 ответов


ответ JW будет работать для записей, где Em находится в самом начале поля.

Если Вам также нужно получить значения, где слово не является первым в строке, попробуйте:

SELECT * FROM tableName WHERE CompanyName LIKE 'Em%' or CompanyName LIKE '% Em%'

(это предполагает, что все слова разделены пробелом.)


использовать LIKE

SELECT * FROM tableName WHERE CompanyName LIKE 'Em%'

другой вариант:CONTAINS, например:

SELECT ... WHERE CONTAINS(CompanyName, 'Em*');