2

我需要允许对连接在一起的两个字段进行全文搜索。在这种情况下,FullName = FirstName + ' ' + LastName。简单的方法似乎是创建一个 FullName 计算列,然后将其作为一列包含在全文索引中。这是一种可接受的方法吗?你会怎么做?

UPDATE 和 INSERT 很少发生,相比之下,使用 CONTAINS 的 SELECT 很常见。我正在使用 SQL 2008。

示例表定义,其中 FirstName、LastName、NickName 和 FullName 是全文搜索中使用的列:

TABLE Player
    Id uniqueidentifier ROWGUIDCOL NOT NULL DEFAULT (newid()),
    ...
    FirstName nvarchar(128),
    LastName nvarchar(128),
    NickName nvarchar(128),
    FullName  AS ([FirstName]+' '+[LastName]) PERSISTED
4

1 回答 1

2

您可以将全文索引添加到视图。

创建一个包含连接的两列的视图。确保使用“模式绑定”创建它:

使用 SCHEMABINDING 等创建视图 [dbo].[v_MyView]。

如果您使用的是 Management Studio,那么其余的过程应该很简单。

于 2009-01-19T03:20:59.307 回答