问题标签 [containstable]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql-server - 我的 ContainsTable 查询不起作用 - 请帮助 :)
我有一个全文目录设置。它的唯一键数为 117,包含 19 个项目。该表只有 19 行。
该表有一个名为 ClientGuid 的 NVARCHAR(50) 字段。这是一个指南,结尾有一些奇怪的文字。
例如..
- 8b6ef4a504dd1a57f079180e7f6eb4a0(-)
- 8b6ef4a504dd1a57f079180e7f6eb4a0(确定)
(不,我没有定义该文本字段数据 - 我们从第 3 方 API 采购它。
无论如何,这是我的 sql 和我针对它运行的查询。当我运行查询时,我得到零结果:(
有什么建议么?服务器是 Sql Server 2008。
full-text-search - 如何在全文搜索中加权
我想搜索一个短语,例如“搜索偏好”。我想将短语本身作为最重要的权重返回。
接下来我想返回“搜索”和/或“偏好”。
而且,在最低排名中,我想要“搜索”或“搜索”或“偏好”。我不知道在 IsAbout 中放置什么重量。
有没有更好的办法?
sql-server - SQL Server Full Text ContainsTable 函数排名问题
如果完全匹配,可以增加 ContainsTable 结果的排名。
我有这样的全文查询
select iname,rank from ItemSearch_View sv INNER JOIN CONTAINSTABLE(ItemSearch_View,searchstring, '(FORMSOF(INFLECTIONAL, "google") )',500) AS itable ON sv.itemid = itable.[KEY] order by rank desc
它提供了以下结果(右侧是排名)
谷歌搜索 352
谷歌前教师,320
谷歌前男孩/女孩朋友 320
谷歌搜索了男/女 320
谷歌 208
是否有可能项目“Google”项目在这里可以有更高的排名。
谢谢维杰
sql - SQL Server 2008 CTE 和 CONTAINSTABLE 语句 - 为什么会出错?
我正在测试将我们的数据库从 SQL Server 2005 迁移到 2008。我们使用 CTE 进行分页。
使用全文 CONTAINSTABLE 时,CTE 将不会运行并生成错误。
这是我的非工作代码-
如果我注释掉 CONTAINSTABLE 行,语句就会执行。如果我只运行 SELECT 语句(而不是 WITH),则该语句执行得很好。
我得到的无用错误是:
消息 0,级别 11,状态 0,行 0 当前命令发生严重错误。结果,如果有的话,应该丢弃。Msg 0, Level 20, State 0, Line 0 当前命令发生严重错误。结果,如果有的话,应该丢弃。
有什么建议么?
sql-server-2005 - 全文搜索中是否有带有“*”字符的特殊条件
我正在使用 sql server 2005 我有一个存储过程,它使用 containstable 方法搜索数据库问题是当我搜索一些带有'*'
字符的前缀时,我看不到只有前缀的完整单词的记录。例如,我搜索'some'
然后将我的变量设置为'some*'
并且我在我的数据库中有'some'
记录'something'
,但结果只是带有“某些”的记录是否有特殊的'*'
字符条件
sql - 全文索引中多列的 AND 语句
我有一个全文索引表,并尝试查询匹配多个单词的结果。例如,我有一个带有索引列的地址表address_text
,zip_code
和city
。
现在我想搜索“Bourbon Baltimore”,只想要第一行。
我尝试了以下方法:
但它根本不会返回任何行。
sql - 是否可以使用 ContainsTable 获取多列的结果?
考虑下表:
人们
- 名字 nvarchar(50)
- 姓氏 nvarchar(50)
让我们暂时假设该表对两列都有全文索引。
假设我想在这张表中找到所有名为“John Smith”的人。以下查询似乎是完成此任务的一种非常合理的方式:
不幸的是,这将不会返回任何结果,假设People表中没有记录在FirstName 或 LastName 列中同时包含“John”和“Smith”。它不会匹配 FirstName 列中的“John”和 LastName 列中的“Smith”的记录,反之亦然。
我的问题是:如何完成我上面想做的事情?请考虑上面的例子是简化的。我正在使用的真实表有十列,我收到的输入是一个单独的字符串,它根据标准分词器(空格、破折号等)
sql-server - 转义 containsTable 关键字
如何转义 ContainsTable 控制关键字(例如 NEAR 或 ISABOUT),以便全文搜索实际查找这些字词,而不将它们视为控制关键字?
sql - 带有通配符的 CONTAINSTABLE 在 SQL Server 2005 和 SQL Server 2008 中的工作方式不同?
我有两个相同的数据库,一个在 SQL Server 2005 上,一个在 SQL Server 2008 上,它具有相同的 SQL_Latin1_General_CP1_CI_AS 排序规则,并且全文搜索目录具有相同的设置。
这两个数据库包含具有相同数据的表,NTEXT 字符串:“...kræve en forklaring fra miljøminister Connie Hedegaard..”
我的问题是:
如果查询是,SQL Server 2008 上的 CONTAINSTABLE 什么也找不到:
但 SQL Server 2005 可以完美运行并找到必要的记录。
如果查询是,SQL Server 2008 会找到必要的记录:
或者
这种奇怪行为的原因是什么?
sql - CONTAINSTABLE 查询不识别小词
我CONTAINSTABLE
用来搜索两个表格列。一旦搜索包含像 'the' 'for' 'a' 这样的小词,即使它们实际出现在列中,搜索也不会返回任何结果。
快速示例。正在搜索的列包含文本。'系统需要升级'
以下 SQL 返回 0 行
一旦 'to' 被省略,它就可以正常工作:
这些较小的单词如何CONTAINSTABLE
使用,或者应该完全忽略它们?如果这些较小的词在搜索中实际上是有意义的,那么它们如何被包含在搜索中?