mybatis拼接查询条件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="mapper.AlarmMapper" >
	 <resultMap id="AlarmResultMap" type="vo.AlarmRs" >
		<result column="alarm_id" property="alarm_id" jdbcType="INTEGER" />
		<result column="alarm_level" property="alarm_level" jdbcType="INTEGER" />
		<result column="alarm_flag" property="alarm_flag" jdbcType="INTEGER" />
		<result column="alarm_time" property="alarm_time" jdbcType="TIMESTAMP" />
		<result column="alarm_desc" property="alarm_desc" jdbcType="VARCHAR" />
	</resultMap>
	
	<sql id="Base_Column_List" >
                alarm_id, alarm_level, alarm_flag, alarm_time, alarm_desc 
  	</sql>
  	
  	<sql id="tableNameSql">
		jy_alarm
	</sql>
	
	<sql id="varSql2">
		<where>
			<trim suffixOverrides="and">
			  	<if test="startDate != null and startDate !=''" >
			     DATE(alarm_time) &gt;= #{startDate,jdbcType=VARCHAR} and 
			    </if>
			    <if test="endDate != null and endDate !=''" >
			     DATE(alarm_time) &lt;= #{endDate,jdbcType=VARCHAR} and 
			    </if>
			    <if test="level !=3" >
			     alarm_level = #{level,jdbcType=INTEGER} and 
			    </if>
			</trim>
		</where>
	</sql>
	
	<select id="getAlarmRs" resultMap="AlarmResultMap" parameterType="vo.AlarmCondition">
		select 
		<include refid="Base_Column_List" />
		from 
		<include refid="tableNameSql" /> 
		<include refid="varSql2" /> 
		ORDER BY alarm_time DESC 
	</select>
	
	<select id="getAlarmRsFirst" resultMap="AlarmResultMap" parameterType="vo.AlarmCondition">
		select alarm_id, alarm_level, alarm_flag, alarm_time, alarm_desc from jy_alarm 
		where DATE(alarm_time) = #{toDay,jdbcType=VARCHAR} ORDER BY alarm_time DESC
	</select>
	
</mapper>


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值