Oracle模糊查询CONCAT参数个数无效

Posted arebirth

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle模糊查询CONCAT参数个数无效相关的知识,希望对你有一定的参考价值。

在使用MyBatis操作Oracle数据库的时候,写模糊查询突然发现原本在mysql中正确的代码,在Oracle中报错,参数个数无效

<if test="empId!=null and empId!=‘‘">
    and e.empId like CONCAT(%,#empId,%)
</if>

异常信息;

技术图片

 

 

经过查阅数个资料后得知Oracle的CONCAT函数不像MySql那样支持三个参数的拼接,需要把SQL语句修正为:

and e.empId like CONCAT(CONCAT(%,#empId),%)

或者

and e.empId like % || #empId ||%;

 

以上仅对Oracle有效!

PS:

  基础真的非常重要!!

  再简单的代码也要多敲几遍,这样才“有可能“成为你的一部分”!

以上是关于Oracle模糊查询CONCAT参数个数无效的主要内容,如果未能解决你的问题,请参考以下文章

oracle like模糊查询 concat的使用

oracle like模糊查询 concat的使用

mybatis中的模糊查询,Oracle和MySQL中的concat

mysql模糊查询千万数据

mysql 模糊查询 concat()

mysql concat函数进行模糊查询