【发布时间】:2015-09-08 19:23:54
【问题描述】:
因为我们有 %。例如:如果我们给 ad%,它将获取所有以 ad 开头的记录,但我应该使用 regexp_like。对于 regexp_like 可以使用什么,以便它充当 like 的 %。我不能使用 ^ad,因为从 UI 中我们会给出像 ad* 这样的东西来获取。
查询前:select * from employee where fname like 'pr%';
当前查询:select * from employee where regexp_like(fname ,'pr+');
对于当前查询,我正在获取包含 pr 但我想获取以 pr 开头的值。
Testdata:如果给出 pr* 那么我应该得到程序等,即以 pr 开头的值。
【问题讨论】:
-
您能否添加您的查询,以便我们查看您要执行的操作?也可能是一些测试数据和预期结果
-
我的问题现在清楚了吗?
-
首先,您使用的正则表达式错误,正确的语法 afaik 是“...where regexp_like(fname, 'pr+')”,我认为 regexp_like 的通配符是句点“。”所以你需要'pr.'
标签: sql regex oracle oracle11g regexp-like