MSSQL全文搜索-仅搜索部分表行
是否有办法将搜索限制在表中的特定行 例如: 在一个大表上,我只想搜索具有特定公司ID的行:MSSQL全文搜索-仅搜索部分表行,sql,sql-server-2008,full-text-search,Sql,Sql Server 2008,Full Text Search,是否有办法将搜索限制在表中的特定行 例如: 在一个大表上,我只想搜索具有特定公司ID的行: select * from Actions where Company_ID=1253 and CONTAINS(ItemDesc, 'ABC') SELECT AC.*, col1.RANK FROM Actions AC INNER JOIN CONTAINSTABLE(Actions, ItemDesc, 'ABC',50) as col1 on col1.
select *
from Actions
where Company_ID=1253
and CONTAINS(ItemDesc, 'ABC')
SELECT
AC.*,
col1.RANK
FROM Actions AC
INNER JOIN CONTAINSTABLE(Actions, ItemDesc, 'ABC',50) as col1
on col1.[KEY] = AC.ActionId
where Company_ID=1253
我尝试了两个示例,我认为搜索首先在所有表行上运行,
然后按公司ID进行过滤
我正在寻找一种在搜索前限制行数的方法
谢谢。像这样的事情是怎么回事
SELECT *
FROM
(
SELECT *
FROM Actions
WHERE Company_ID = 1253
) AS CompanyFilteredActions
WHERE CONTAINS(ItemDesc, 'ABC')
您需要查看查询计划和性能,但我认为这至少可以满足您的要求。类似的操作是如何进行的
SELECT *
FROM
(
SELECT *
FROM Actions
WHERE Company_ID = 1253
) AS CompanyFilteredActions
WHERE CONTAINS(ItemDesc, 'ABC')
您需要查看查询计划和性能,但我认为这至少可以满足您的要求