Различия между содержит и содержит таблица?
У меня есть следующие запросы, которые должны быть технически эквивалентны:
Первый
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