MySQL MyBatis Like 查询

本文详细介绍MyBatis中使用Like进行模糊查询的两种方法,包括动态SQL的使用,如根据参数判断是否添加查询条件,以及如何正确使用百分号通配符实现字符串匹配。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Like查询方式一、

  <sql id="condition">
		<if test="userPin != null and userPin != ''">
			AND UCAS_AUTH_USER.USER_PIN like
			'%${userPin}%'
		</if>
		<if test="userName != null and userName != ''">
			AND UCAS_AUTH_USER.USER_NAME like
			'%${userName}%'
		</if>
		<if test="state != null and state != ''">
			AND UCAS_AUTH_USER.STATE = #{state,jdbcType=VARCHAR}
		</if>
		<if test="organiztionSid != null ">
			AND UCAS_AUTH_USER.ORGANIZTION_SID =
			#{organiztionSid,jdbcType=BIGINT}
		</if>
	</sql>

Like查询方式二、

 <!-- 公共查询条件  -->
  <sql id="condition">
  		<if test="id != null">
  			and sys_data_dict.id_ = #{id, jdbcType=VARCHAR}
  		</if>
  		<if test="categoryId != null">
  			and sys_data_dict.category_id = #{categoryId, jdbcType=VARCHAR}
  		</if>
  		<if test="categoryCode != null and categoryCode != ''">
  			and sys_data_dict.category_code like concat('%', #{categoryCode,jdbcType=VARCHAR}, '%')
  		</if>
  		<if test="categoryName != null and categoryName != ''">
  			and sys_data_dict.category_name like concat('%', #{categoryName,jdbcType=VARCHAR}, '%')
  		</if>
  		<if test="key != null and key != ''">
  			and sys_data_dict.key_ like concat('%', #{key,jdbcType=VARCHAR}, '%')
  		</if>
  		<if test="type != null and type != ''">
  			and sys_data_dict.type_ = #{type, jdbcType=VARCHAR}
  		</if>
  		<if test="state != null and state != ''">
  			and sys_data_dict.state_ = #{state, jdbcType=VARCHAR }
  		</if>
  </sql>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值