Mybatis if标签判断大小

Posted 伯牙绝音

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis if标签判断大小相关的知识,希望对你有一定的参考价值。

1、if标签语法

<select...>
  SQL语句1
  <if test="条件表达式">
     SQL语句2
  </if>
</select>

注意:条件表达式中大于号小于号用 gt,lt

<if test="vane gt 0">...</if>

<if test="vane lt 0">...</if>

mapper xml代码:

  <select id="selectByUpdatedAt" resultMap="ResultMapWithBLOBs">
    select
    <include refid="Base_Column_List" />
    ,
    <include refid="Blob_Column_List" />
    from products
    <where>
        <if test="vane gt 0">
            updated_at &gt; #{date} AND status = #{status}
            ORDER BY is_top desc , updated_at desc
        </if>
        <if test="vane == 0">
            updated_at = #{date} AND status != #{status}
            ORDER BY is_top desc , updated_at desc
        </if>
        <if test="vane lt 0">
            updated_at &lt; #{date} AND status = #{status}
            ORDER BY is_top desc , updated_at desc
        </if>

    </where>
  </select>

mapper 接口代码:

/**
     * vane大于0表示大于;0表示等于;小于0表示小于;
     * status 商品状态。1:在售;2:下架;3:删除;
     * @param vane vane
     * @param date 时间
     * @param status 商品状态
     * @return List
     */
    List<Product> selectByUpdatedAt(@Param("vane") Integer vane,
                                    @Param("date") Date date,
                                    @Param("status") Byte status);

 



以上是关于Mybatis if标签判断大小的主要内容,如果未能解决你的问题,请参考以下文章

mybatis框架注解对象怎么在if 标签判断

mybatis里if标签判断字符串相等不相等的问题

mybatis里if标签判断字符串相等不相等的有关问题

mybatis if标签判断字符串

mybatis中if标签判断字符串相等问题

mybatis if判断两个值是不是相等存在的坑啊