问题标签 [oracle-text]
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.
oracle - Oracle 文本单字符通配符与空格不匹配
假设您需要找到单词的组合
然后使用 oracle 文本,它看起来像:
但是,如果可能有任何其他分隔字符怎么办。“。,“ 例如。那么你会去做这样的事情
最终它将无法正常工作,因为在 oracle 文本中,单个通配符“_”由于某种原因与空格不匹配,因此您会丢失以下记录:
有没有办法解决这个问题?
oracle - Oracle Text 包含和技术内容
我正在搜索技术词“AN-XYZ99”。所以我用
但我也得到像“FO-XYZ99”或“BAR-XYZ99”这样的结果。我能做些什么来确保预期的结果?
我用了
来自“bar”列的示例数据 (VARCHAR2(4000)):
使用上面的语句,我希望第一行作为输出,但我也得到第二行和第三行。
Oracle Database 11g 企业版 11.2.0.3.0 - 64 位生产
oracle - ORACLE 文本搜索
我希望能够匹配(尽可能接近)两个文本字段。关于如何在 Oracle 中执行此操作的任何想法。我已经研究过在 Oracle Text 中使用 Context,但我不知道如何解析要输入的字段之一以包含选择中的子句。
示例:搜索“这是红色汽车”将根据两个值中的“红色汽车”返回“红色汽车属于斯蒂芬”。
oracle - Oracle Text - 使用存储过程构建上下文索引需要很长时间
我正在寻找一种在 oracle 数据库上进行自由文本搜索的方法,我目前使用的是 11.2.0.4。
经过一些研究,Oracle Text 似乎是要走的路。我构建了一个存储过程,它基本上将我想要跨多个表索引的列数据连接起来,并以此为基础建立索引:请参阅下面的一些重要命令。
但基本上遵循了这个文件:
https://mindfabblog.wordpress.com/2012/09/11/oracle-text-multiple-columns-multiple-tables/
我遇到的问题是建立索引需要很长时间,有没有更好的方法来实现我想要的?或加快我的索引建立?
oracle - Oracle Text CONTAINS() 查询返回所有行
如何编写CONTAINS
返回索引中所有行的 Oracle 文本查询(查询)?
我试过这个:
但这不会返回任何行。是否有匹配所有行的模式?
sql - 文本包含搜索在第二天不起作用
我正在执行以下选择语句。
我在地址列上创建了以下索引。
选择语句有一天会起作用。但是第二天它不会返回结果。
我必须删除MY_TABLE_ADDRESS_CTX
索引并再次运行它才能成功返回结果。
我还尝试将索引定义更改为
但这在第二天也失败了。我不得不重新运行索引。
知道为什么会这样吗?如何解决此问题以使搜索始终有效?
oracle - 带有“不包含”的 Oracle 文本非常慢
我有一张包含数百万条记录的表格,Oracle Text 完美无缺。
select * from table1 where contains(col1, 'some text') > 0
但如果我添加not
它会变得非常慢。
select * from table1 where contains(col1, 'some text') > 0 and (not contains(col1, 'some text') > 0)
或者
select * from table1 where contains(col1, 'some text') > 0 and (
contains(col1, 'some text') = 0)
第一个直接查询在几分之一秒内执行,第二个需要几分钟。
有什么解决办法吗?
oracle - Oracle Text catsearch 左截断搜索
因此,根据关于 catsearch 的 Oracle 文档,不可能将左截断搜索与 catsearch 文本查询一起使用。但是,我发现使用双通配符确实具有左截断查询的预期效果。
例如select * from foo where CATSEARCH(bar, '**zing', '')>0;
,会找到带有“这太棒了”价值的 bar 的记录,而
select * from foo where CATSEARCH(bar, '*zing', '')>0;
不会
对于我的单词列表的配置,我启用了substring_index和prefix_index。在 substring_index 描述中,它确实提到了左截断(和双截断)通配符的用法。
我找不到任何理由说明为什么/如何使用双通配符,它的优化程度以及它是否有任何其他副作用。
所以终极问题:
- 为什么这种语法有效,是否有任何描述它的地方?
- 在性能方面是否平等?
- 使用这种语法时,人们还应该注意其他副作用吗?
oracle - oracle - 我可以在 clob 中使用 contains 和 near 吗?需要加快查询
我们有一个查询需要 48 分钟才能在 clob 上运行搜索。查询被编写为好像它不是 clob 列并使用 contains 和 near。在彼此之间一定的单词距离内搜索 3 个单词很重要。我需要加快速度并想在 clob 上做一个索引,但不知道这是否可行并且不完全理解如何去做。我从 Tom Burleson http://www.dba-oracle.com/t_clob_search_query.htm 或https://asktom.oracle.com/pls/apex/asktom.search?tag=oracle-text-contains-search-找到了这个with-near-is-very-slow ,但不知道如何使用 contains 和 near 来搜索彼此相距一定距离的 3 个单词。
当前脚本:
如果它像索引一样,想要使用这样的东西:
如果没有,我需要进行索引,但我不太了解如何使用 CTXCAT 和 CONTEXT ( https://docs.oracle.com/cd/A91202_01/901_doc/text.901/a90122/ind4.htm )。我也不喜欢我在这里读到的内容,即如果使用 CTXCAT 来索引 clob,则必须使用 CONTEXT 或类似的东西。它不会影响对该字段执行的其他查询。
提前致谢!