<select id="getDataList" resultMap="DataInfoDto" parameterType="cn.com.liu.domain.vo.Data">
SELECT
lo.HUB_LOCK_ID,
lo.HUB_LOCK_NAME,
re.APPLY_DATE,
re.APPLY_PASS_DATE,
re.APPLY_STATUS
FROM
T_BASE_HUB_LOCK lo
LEFT JOIN T_SRV_APPLY_LOCK_HUB hub ON lo.HUB_ID =hub.HUB_ID
LEFT JOIN T_SRV_APPLY_LOCK_RECORD re ON re.ID = hub.APPLY_ID
where 1=1
<if test="czName != null and czName != ''" >
and lo.HUB_LOCK_NAME like '%' || #{czName} ||'%'
</if>
<if test="startDate !=null ">
and TO_DATE(re.APPLY_PASS_DATE,'yyyy-MM-dd') >= #{startDate}
</if>
<if test="endDate != null">
and TO_DATE(re.APPLY_PASS_DATE,'yyyy-MM-dd') <= #{endDate}
</if>
</select>
- 注意oracle 比值符号 大于: >= 小于等于:<=
- 表中日期字段类型若为varchar 则接口类应该是:
import java.sql.Date;
- 确保时间类型一致,且加上时间戳:
@JsonFormat(pattern = "yyyy-MM-dd")
- String 类型判断是否为空字符串 时间不能判断
( CASE WHEN LEAVE_TIME is NULL THEN 1 WHEN LEAVE_TIME >= ENTRY_TIME THEN 2 ELSE 0 END ) status,