我正在尝试SQL Server全文搜索。
我有一个简单的Categories表,其中Id为主键:
CREATE TABLE [dbo].[Category](
[Id] [int] IDENTITY(1,1) NOT NULL,
[CategoryName] [varchar](100) NOT NULL,
)
我的查询是:
SELECT *
FROM
FREETEXTTABLE (Category, CategoryName, 'music') AS F
INNER JOIN Category C ON F.[Key] = C.Id
ORDER BY F.Rank DESC
这会返回几条带有音乐字样的记录,但它不会返回任何带有“音乐”字样的记录。
虽然,可以说被搜索的字符串不是很大,使用LIKE运算符会解析它。我想使用全文搜索,因为这个简单的例子将扩展到包括其他表和文件。
答案 0 :(得分:1)
如果您想匹配前缀,可以使用containsstable而不是freetexttable,并在搜索字词中加入通配符:'music *'