mybatis 使用concat 模糊查询方式

 更新时间:2022年01月14日 14:19:17   作者:耳东的慢生活  
这篇文章主要介绍了mybatis 使用concat 模糊查询方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

使用concat 模糊查询

<select id="queryByKeyWord" resultType="com.mingdutech.xelerator.eln.dto.ApparatusDto">
        select distinct b.*
        from base_apparatus b
        left join base_apparatus_column c
        on b.ID = c.apparatus_id
        <if test="keyWord != null">
            <where>
                CONCAT( IFNULL(b.name,''),
                IFNULL(code,''),
                IFNULL(serial,''),
                IFNULL(location,''),
                IFNULL(remark,''),
                IFNULL(b.create_user,''),
                IFNULL(b.update_user,''),
                IFNULL(c.field_value,''),
                IFNULL(batch_no,'') )
                like CONCAT('%',#{keyWord},'%')
            </where>
        </if>
    </select>

concat() 函数用于将多个字符串拼接成一个字符串

本举例

keyWord为空查询所有,keyWord不为空,检索所有contact中所有字段匹配的内容。

注意

所有字段需要IFNULL判断,否则某字段为空可能会导致查询结果丢失一条记录

模糊查询使用concat('%',#{str},'%')出错

经过我一套乱七八糟毫无思路地查找后,发现不是mybatis的原因,原来是SQL server不支持concat函数,直接用加号连接就好

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • hibernate测试时遇到的几个异常及解决方法汇总

    hibernate测试时遇到的几个异常及解决方法汇总

    今天小编就为大家分享一篇关于hibernate测试时遇到的几个异常及解决方法汇总,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • java+selenium实现自动化打开页面的方法

    java+selenium实现自动化打开页面的方法

    今天小编就为大家分享一篇java+selenium实现自动化打开页面的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • Java JNDI案例详解

    Java JNDI案例详解

    这篇文章主要介绍了Java JNDI案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • java中创建两表之间的触发器详解

    java中创建两表之间的触发器详解

    这篇文章主要介绍了java中创建两表之间的触发器详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-06-06
  • Spring Security无法调用接口错误的问题解决

    Spring Security无法调用接口错误的问题解决

    记录一下之前在写程序的时候遇到的问题,Spring Security无法调用接口错误的问题,本文就来介绍一下解决方法,感兴趣的可以了解一下
    2023-08-08
  • Hibernate之CRUD操作实践

    Hibernate之CRUD操作实践

    这篇文章主要介绍了Hibernate之CRUD操作实践,本文主要告诉读者Hibernate是什么,为什么要使用HibernateHibernate的优缺点,Hibernate的基础实例应用。需要的朋友可以参考下
    2018-11-11
  • java 按行读取文件并输出到控制台的方法

    java 按行读取文件并输出到控制台的方法

    今天小编就为大家分享一篇java 按行读取文件并输出到控制台的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • 使用springboot结合vue实现sso单点登录

    使用springboot结合vue实现sso单点登录

    这篇文章主要为大家详细介绍了如何使用springboot+vue实现sso单点登录,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • 一文讲解如何解决Java中的IllegalArgumentException异常

    一文讲解如何解决Java中的IllegalArgumentException异常

    这篇文章主要给大家介绍了关于如何解决Java中IllegalArgumentException异常的相关资料,IllegalArgumentException是Java中的一个标准异常类,通常在方法接收到一个不合法的参数时抛出,需要的朋友可以参考下
    2024-03-03
  • java操作oracle数据库示例

    java操作oracle数据库示例

    这篇文章主要介绍了java操作oracle数据库示例,需要的朋友可以参考下
    2014-04-04

最新评论