Различия между содержит и содержит таблица?

У меня есть следующие запросы, которые должны быть технически эквивалентны:

Первый

select Product_ID from ProductSearchIndexData psid
where Product_ID = 946 and contains(psid.[Text], '("exp*")')

второй

SELECT [key] as Product_ID, rank
FROM CONTAINSTABLE(ProductSearchIndexData, [Text], '("exp*")')
where [key]= 946

Первый возвращает правильный результат, а другой - нет.

Есть ли что-то, что я здесь скучаю?

Спасибо!

1 ответ

Я согласен с "Китом".

Поле [key] возвращает значения полнотекстового ключа строк, которые соответствуют критериям. В вашем случае это не productProduct_id, который является ключевым в таблице поиска.

пытаться

SELECT [key], Product_ID, rank
FROM CONTAINSTABLE(ProductSearchIndexData, [Text], '("exp*")')
where Product_ID = 946
Другие вопросы по тегам