У меня есть таблица T, в которой есть столбец C, в котором содержится текст с символом & внутри него, но если я сделаю следующий запрос, он ничего не вернет, хотя у меня может быть 10 строк.
SELECT * FROM T WHERE Contains(C, 'a&b')
Используйте двойные кавычки, чтобы сделать это поисковым запросом:
SELECT * FROM T WHERE CONTAINS(C, '"a&b"')
В противном случае вы ищете что-то, имеющее AND b.
Вместо этого используйте:
SELECT * FROM T WHERE C like '%&%'
, если вы ищете только &
или
SELECT * FROM T WHERE C like '%a&b%'
, если вам нужно найти a & b
Я создаю копию столбца, который заменяет & и другие не алфавитно-цифровые символы на _. Тогда я могу сделать это.
SELECT * FROM T WHERE Contains(C_searchable, 'a_b')
Можете ли вы использовать LIKE вместо содержит?
SELECT * FROM T WHERE C LIKE '%a&b%'