全文查询?

xfxf521 湖北泰康 项目经理  2006-02-27 09:16:44
全文查询只能根据一列来查询?
但是能不能这样的呢?
我要用组合查询,查询的条件包括全文查询的列,并且还要满足其他的查询的 条件?
就像使用and操作符号一样?
...全文
79 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zlp321002 2006-03-01
比如说titles表中。我想找Description列中包括 beers AND ales,并且title_id列等于‘###’的
那是不是就是?
---------------------------------
SELECT title_id, title, ytd_sales
FROM titles
WHERE CONTAINS(Description, ' beers AND ales ' ) and title_id="####"
GO
回复
xfxf521 2006-02-28
你CONTAINS( Description, ' beers AND ales ' )
beers AND ales 搜索出来的还是在Description吧
但是我要这样的呢
比如说titles表中。我想找Description列中包括 beers AND ales,并且title_id列等于‘###’的
那是不是就是?
USE pubs
GO
SELECT title_id, title, ytd_sales
FROM titles
WHERE CONTAINS( title, ' cooking AND NOT ("computer*" )' ) and Title="####"
GO
回复
zlp321002 2006-02-28
--一个全文目录可以包含多个全文索引.一个全文索引可以包含多个字段.一个表只能有一个全文索引.
回复
zlp321002 2006-02-28
全文查询只能根据一列来查询?
--非也
但是能不能这样的呢?
我要用组合查询,查询的条件包括全文查询的列,并且还要满足其他的查询的 条件?
就像使用and操作符号一样?
--可以
使用 AND、OR 和 AND NOT 组合全文检索运算符
可以在 CONTAINS 谓词的搜索条件之间使用圆括号和布尔运算符(AND、AND NOT 和 OR)。假定 titles 表中的一行或多行包含关于喜爱的配方(favorite recipes)和美食家的配方(gourmet recipes)的信息。要检索包含关于任何一种配方类型的文本的行,请在"favorite recipes"和"gourmet recipes"短语之间使用一个 OR。

USE pubs
GO
SELECT title, notes
FROM titles
WHERE CONTAINS( notes, ' "favorite recipes" OR "gourmet recipes" ' )
GO

此例检索 titles 表中 titles 包含 cooking,但是不包含 computers 和 computer 的所有行。

USE pubs
GO
SELECT title_id, title, ytd_sales
FROM titles
WHERE CONTAINS( title, ' cooking AND NOT ("computer*" )' )
GO

此例获得一个产品目录说明表,其中的说明提到了单词 beers 和 ales。

USE Northwind
GO
SELECT CategoryName, Description
FROM Categories
WHERE CONTAINS( Description, ' beers AND ales ' )
GO

可以将短语和谓词结合起来检索单词和短语的组合。例如,可以检索所有包含滑冰(ice skating)或冰球(hockey)但是不包含奥运会(Olympics)的行。使用 CONTAINS 谓词的 WHERE 子句的形式如下:

WHERE CONTAINS (*, '("ice skating" or hockey) AND NOT olympics')

回复
相关推荐
发帖
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
帖子事件
创建了帖子
2006-02-27 09:16
社区公告
暂无公告