mybatis

如何在MyBatis的动态SQL中实现if-else功能

小樊
334
2024-08-16 02:32:38
栏目: 云计算

在MyBatis的动态SQL中可以使用if标签来实现if-else功能。以下是一个示例:

<select id="selectUsers" parameterType="map" resultType="User">
  SELECT *
  FROM users
  <where>
    <if test="name != null">
      AND name = #{name}
    </if>
    <if test="age != null">
      AND age = #{age}
    </if>
  </where>
</select>

在上面的示例中,如果传入的参数map中包含name,则会添加一个条件AND name = #{name},如果传入的参数map中包含age,则会添加一个条件AND age = #{age}。如果不满足条件,则不会添加任何条件。

这样就可以实现if-else功能,在动态SQL中根据传入的参数来动态拼接SQL语句。

0
看了该问题的人还看了