Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Използване на пълнотекстово търсене в SQL Server 2008 в множество таблици, колони

Използвайки FREETEXTTABLE, просто трябва да проектирате някакъв алгоритъм за изчисляване на обединения ранг на всеки резултат от обединена таблица. Примерът по-долу изкривява резултата към попадения от таблицата на книгата.

SELECT b.Name, a.Name, bkt.[Rank] + akt.[Rank]/2 AS [Rank]
FROM Book b
INNER JOIN Author a ON b.AuthorID = a.AuthorID
INNER JOIN FREETEXTTABLE(Book, Name, @criteria) bkt ON b.ContentID = bkt.[Key] 
LEFT JOIN FREETEXTTABLE(Author, Name, @criteria) akt ON a.AuthorID = akt.[Key]
ORDER BY [Rank] DESC

Имайте предвид, че опростих вашата схема за този пример.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как мога да сравня времето в SQL Server?

  2. Как да промените настройките за конфигурация за поща на база данни в SQL Server (T-SQL)

  3. Добавяне на стъпка на задача към съществуваща задача на агент на SQL Server (T-SQL)

  4. Внедряване на обработка на грешки и транзакции в SQL Server

  5. Проверете неизпратена поща в SQL Server (T-SQL)