我正在尝试加快使用包含 Near 的查询和使用 regexp_like 的查询。初始的 Contains Near 查询运行大约需要 45 分钟。Clob Column 包含大型“文档”并且是域索引的。
初始查询:
SELECT column1
FROM TEST
WHERE CONTAINS(column1,'{NEAR(quick,fox, lazy), 3, FALSE}')>0;
建议查询:
SELECT column1
FROM TEST
WHERE REGEXP_LIKE(column1, '(\b(quick|fox|lazy)(?:\W+\w+){1,6}?\W(quick|fox|lazy)(?:\W+\w+){1,}?\W(quick|fox|lazy)\b)','i')
我从这里得到了原始的正则表达式语法: https ://www.regular-expressions.info/near.html 。
问题: 我让正则表达式代码在 html https://www.regextester.com中工作,但是当我把它放在 Oracle 中时,它什么也没找到。我的语法有什么问题?我想不通。Oracle 是否以不同方式处理 REGEXP?