Раньше у нас был поиск, который проверял два столбца на наличие некоторых слов. Оба столбца должны содержать несколько слов, поэтому мы используем AND ... нет сомнений, что FULLTEXT INDEX используется для столбцов.
Выбор более или менее похож на это:
SELECT
*
FROM SomeTable
WHERE (CONTAINS(Column1, 'word1 OR word2') AND CONTAINS(Column2, 'word3 OR word4'))
теперь нам нужно добавить рейтинг к результату. Мы хотели бы использовать функциональность CONTAINSTABLE ... только для одного столбца. Что-то вроде:
SELECT
SomeTable.*,
tmp.RANK
FROM SomeTable
INNER JOIN CONTAINSTABLE(SomeTable, Column1, 'word1 OR word2') as tmp
ON tmp.[KEY] = SomeTable.ID
Можно ли сделать это с 2 столбцами, НО учтите, что мне нужно искать только слово 1 или слово 2 в столбце 1 (не интересно, если у нас есть слово 1 или слово 2 в столбце 2) Также обратите внимание на то, что было в предложении where. Есть ли что-то вроде:
SELECT
SomeTable.*,
tmp.RANK
FROM SomeTable
INNER JOIN CONTAINSTABLE(SomeTable, (Column1, Column2), 'column1:(word1 OR word2) AND column2:(word3 OR word4)') as tmp
ON tmp.[KEY] = SomeTable.ID