我正在学习使用正则表达式,并通过使用Oracle11中的REGEXP_LIKE来限制搜索查询的结果。
Plan navegación 200 MB
Plan navegación 1 GB
Plan navegación 1 GB
Plan de navegacion 3G
Plan de navegacion 4G
Plan de navegacion 3G Empresarial
Plan de navegacion 4G Empresarial
Plan de servicios 3G
Plan de servicios 4G
Plan navegación Datos
我希望这个结果仅限于以下几个方面(只有3G,4G):
Plan de navegacion 3G
Plan de navegacion 4G
Plan de navegacion 3G Empresarial
Plan de navegacion 4G Empresarial
我使用以下搜索模式,但没有正确地过滤结果:
我做了几次测试,但没有找到解决办法。有人能给我暗示吗?
发布于 2014-06-27 19:51:32
你可以用这个:
SELECT * FROM mytable
WHERE REGEXP_LIKE(mycolumn, '\APlan de navegacion \dG.*\z', 'c');
\d
表示一个数字\A
是字符串的开头。.*
贪婪地匹配任何字符\z
是字符串的末尾。发布于 2020-03-13 12:32:56
select *
from all_tab_columns
where COLUMN_NAME like '%MAIN%ACCOUNT%LINK%CODE%N%' and TABLE_NAME like 'CB%' and not regexp_like(table_name,'[0-9]')
上面的查询将获取没有内容数量的唯一对象。
select *
from all_tab_columns
where COLUMN_NAME like '%MAIN%ACCOUNT%LINK%CODE%N%' and TABLE_NAME like 'CB%' and not regexp_like(table_name,'[0-9]')
上面的查询将只获取具有数字内容的对象。
https://stackoverflow.com/questions/24454442
复制相似问题