【发布时间】:2016-01-03 12:08:23
【问题描述】:
以下查询是使用 SQL Server 2014 CONTAINS 函数编写的。
SELECT
Org1.OrganizationPK
,*
FROM Organization Org1
WHERE Org1.Deleted = 0
AND CONTAINS (Org1.NAME,'"chris6*"')
AND org1.OrgDomainInd = 1
但是,上述查询不工作。
我已经关注this article 了解更多关于 CONTAINS 函数的信息。我已经按原样验证了这些示例。即使在这里,我也没有得到任何结果。
我已经验证了这个post from stackoverflow,但我无法申请我的要求。
因此,我开始怀疑是否需要做更多的事情来配置 SQL Server 2014 以使用 CONTAINS 功能?请让我知道是否需要做任何事情来使 SQL Server 2014 准备好使用 CONTAINS 函数。 如果没有类似的东西,请给我建议解决方案。
请不要建议我使用 LIKE 运算符。我之所以这么说是因为,我的大多数同事都向我提出了同样的建议;因此,为防万一,我在此写下此声明。
我赶不上日程来完成这项任务。
【问题讨论】:
-
您正在搜索的列上是否有
full-text index? CONTAINS 是在 Transact-SQL SELECT 语句的 WHERE 子句中使用的谓词,用于对包含基于字符的数据类型的全文索引列执行 SQL Server 全文搜索。 (msdn.microsoft.com/en-us/library/ms187787.aspx) -
@Pred:是的,我在所需列上有全文索引。
-
在这种情况下,您能给我们一些示例数据和所需的输出吗?
-
预期的结果很清楚。我需要组织表中所有以 Chris6 作为组织名称一部分的行。
-
看到原始数据集,知道业务需求的你,预期的结果已经很清楚了,可惜StackOverflow上的读心和终极黑客服务正在维护中,所以我们不能使用它们获取更多信息。提供相关的 DDL、一些示例数据、您的目标以及预期的输出有助于我们为您提供帮助。 “不工作”是一个问题的板子描述(没有返回记录,返回的记录太多,发生错误,盒子爆炸等),尤其是当我们不了解环境时。
标签: sql-server sql-server-2014