ibatis的sql配置文件sql.xml大于小于等于的写法

在ibatis的sql语句xml配置文件中,写sql语句会经常用到大于等于小于等于等等符号。网上搜罗了一些写法,大致有3种:

  1. 其实就是xml特殊符号,转义的方式。
    &lt; <
    &gt; >
    &lt;&gt; <>
    &amp; &
    &apos;
    &quot;
    比如:
    select (case when (UNIX_TIMESTAMP(now())-UNIX_TIMESTAMP(ur.offline_time)-5*60*1000)&gt;0 then '1' else '0' end) as offline_flag from ……

  2. 使用<![CDATA[ sql语句]]>符号进行说明,将此类符号不进行解析 。
    比如:
    <isEqual property="offline_flag" compareValue="0">
    and <![CDATA[((UNIX_TIMESTAMP(now())-UNIX_TIMESTAMP(ur.offline_time)-5*60*1000)<=0 or u.record_id=0)]]>
    </isEqual>

  3. 如果是参数字段,可以用ibatis的语法。
    <isEqual> 相等。
    <isNotEqual> 不等。
    <isGreaterThan> 大于
    <isGreaterEqual> 大于等于
    <isLessThan> 小于
    <isLessEqual> 小于等于

    比如:
    <isNotEmpty prepend="AND" property="username">
    u.username like '%$username$%'
    </isNotEmpty>
    <isNotEmpty prepend="AND" property="location">
    concat(u.country,u.province,u.city) like '%$location$%'
    </isNotEmpty>
    <isEqual property="offline_flag" compareValue="1">
    and (UNIX_TIMESTAMP(now())-UNIX_TIMESTAMP(ur.offline_time)-5*60*1000)&gt;0
    </isEqual>
    <isEqual property="offline_flag" compareValue="0">
    and <![CDATA[((UNIX_TIMESTAMP(now())-UNIX_TIMESTAMP(ur.offline_time)-5*60*1000)<=0 or u.record_id=0)]]>
    </isEqual>
    <!-- sort -->
    <isEqual property="sort_onlinetime" compareValue="asc">
    order by u.online_time asc
    </isEqual>
    <isEqual property="sort_onlinetime" compareValue="desc">
    order by u.online_time desc
    </isEqual>
    <isEqual property="sort_registtime" compareValue="asc">
    order by u.register_time asc
    </isEqual>
    <isEqual property="sort_registtime" compareValue="desc">
    order by u.register_time desc
    </isEqual>
    <isEqual property="sort_appversion" compareValue="asc">
    order by u.app_version asc
    </isEqual>
    <isEqual property="sort_appversion" compareValue="desc">
    order by u.app_version desc
    </isEqual>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值