MyBatis中动态sql 传入枚举类型与String字段对比

sql如果不想将逻辑写在sql或代码中分离出来的话可以使用mybatis标签    
mybatis 做简单条件判断的时候可以选用<choose/> <when/>标签
当传入的封装对象中有枚举类型的时候是无法将枚举类型直接和字符串继续比较的,如下图

<choose>
    <when test="queryType == 'DAY'">
        to_char(createTime,'YYYY-MM-dd')
    </when>
    <when test="queryType == 'HOUR'">
        to_char(createTime,'YYYY-MM-dd hh24')
    </when>
    <otherwise>
        to_char(createTime,'YYYY-MM')
    </otherwise>
</choose>

想要可以进行比较的花可以

<choose>
    <when test="queryType.toString == 'DAY'">
        to_char(createTime,'YYYY-MM-dd')
    </when>
    <when test="queryType.toString == 'HOUR'">
        to_char(createTime,'YYYY-MM-dd hh24')
    </when>
    <otherwise>
        to_char(createTime,'YYYY-MM')
    </otherwise>
</choose>    

 


版权声明:本文为whitesun123原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
THE END
< <上一篇
下一篇>>