Результаты семантического поиска в SQL Server не возвращают более 10 строк - PullRequest
0 голосов
/ 25 января 2019

Я успешно настроил и включил семантический поиск, следуя этому руководству Microsoft в SQL Server 2017 Development Edition. Семантический поиск включен в поле таблицы nvarchar(max), в котором сохраняется обычный текст на английском языке для семантического поиска. В таблице более 900 строк, но при выполнении следующего оператора SQL я получаю не более 10 строк! Почему я вижу это поведение и что я должен сделать, чтобы получить больше строк в результате оператора?

declare @idToCompare int = 1044

SELECT TOP(50) KEY_TBL.matched_document_key AS MatchId , score 
FROM SEMANTICSIMILARITYTABLE  
    (  
    MySemanticTable,  
    ContentToSearch,  
    @idToCompare
    ) AS KEY_TBL  

ORDER BY KEY_TBL.score DESC

1 Ответ

0 голосов
/ 25 января 2019

Оказывается, это старая проблема, которая никогда не решалась. Эта особенность SQL Server, кажется, не стоит использовать, если нет решения для этого. Не уверен, почему Microsoft представила эту функцию!

https://social.msdn.microsoft.com/Forums/sqlserver/en-US/d9bdd8d5-dec4-4076-bcb8-692f1d509c74/semanticsimilaritytable-sql2012-1102100-why-pull-max-of-only-10-results?forum=sqldatabaseengine

...