Вы должны выбрать нейтральное средство разбиения по словам, если у вас есть столбец, в котором есть разные языки (особенно западные и незападные языки).
Есть и другие опции, такие как
- Разделение столбцов по каждому языку (как указано @Tony)
- если ваши данные представляют собой простой текст; преобразование его в тип данных xml и добавление языковых тегов, которые указывают язык, который используется полнотекстовым движком.
- разработка собственного средства разбиения по словам (хотя это не оптимальное решение)
Вот статья о передовых методах выбора языка при создании полнотекстового индекса.
Добавлено после комментариев
Это может быть запрошено несколько столбцов различными способами в зависимости от вашего варианта использования. Самый простой способ - использовать предикат CONTAINS для запроса нескольких столбцов, указав список столбцов для поиска, как показано ниже;
SELECT Name, Color FROM Production.Product
WHERE CONTAINS((Name, Color), 'Red');
Другим решением может быть использование столбца индикатора языка, который можно использовать в операторах CASE / IF, что помогает вам условно разделить запрос по языку. Вы также можете использовать функцию TSQL DATALENGTH (), чтобы проверить, является ли она пустой, и решить, какой столбец выбрать.