正则表达式regexp_like解决了我什么问题

今天看到之前写的SQL语句,运用了正则表达式regexp_like,但是回想不起来当时为什么要用它,代码里面的SQL是这样的:
sql封装在了Fun里面,带入了v_temp变量:

      select * from A
      where regexp_like(字段a, v_temp)

对于v_temp的业务场景,取值可以为null、like ‘1A%’、‘1A1’和’1A2’;

如果使用like

      select * from A
      where 字段a like v_temp

无法满足’1A1’和’1A2’的这样的情况;

如果使用in

      select * from A
      where 字段a in(v_temp)

无法满足模糊查询like '1A%'的情况;

所以使用正则表达式regexp_like,解决了这个问题,其中v_temp传入参数格式为1A、1A1|1A2解决like、in无法随参数切换的问题;

你可能感兴趣的:(正则表达式,sql,数据库)