在db2 可以使用like进行模糊查询,从而达到类似正则的效果:
select * from TABLE_NAME where CONTENT like '%A%B%C%'
如果要查询字符中是否包含”%“,需要用到转义符’+’:
// 以下代码没有返回结果
select 1 from sysibm.sysdummy1 where 'AAA%BBBCCC' like 'AAA+%BBB%' escape '+'
// 返回1
select 1 from sysibm.sysdummy1 where 'AAA%BBBCCC' like 'AAA+%BBB%' escape '+'
同样,如果要查询字符中是否包含’+‘,则需要连续写两个’++’
//没有返回值
select 1 from sysibm.sysdummy1 where 'AA+AA%BBB111' like 'AA+AA+%BB%' escape '+'
// 返回1
select 1 from sysibm.sysdummy1 where 'AA++AA+%BB%' like 'AA++AA+%BB%' escape '+'