mybatis对于一段时间内的数据查询

前言

项目中有个场景需要查询一段时间内的记录,比如,查询指定用户今天的收藏记录

测试场景重现

前提

数据库中数据:有一条更新时间为【2019-01-01 15:10:20】的数据

img

查询条件

开始日期:2019-01-01 14:00:00
结束日期:2019-01-01 15:20:30
model_id: Buw2y9CQMmc1tX7HQw9MLx
scene_id: scene1

查询结果

0条记录

问题追踪

可能的原因:

  1. 时区问题(排除)
  2. 传参问题(参数不正确,排除)
  3. 返回值问题(date和string的转换,排除)
  4. 查询方式问题(靠点谱,接着看)

当时间传参方式为date或 timestamp 格式时,查询开始日期和结束日期时间差超过一天时,查询结果正常;

当开始日期和结束日期时间差在一天内时,查询结果异常

传参方式为Date类型(java.util.Date)(查询结果个数为 0):

## Mapper.xml
<select id = "getTimes"  parameterType="map" resultType="java.lang.Integer">
  select
	count(*)  from t_model_monitor
  where scene_id =#{sceneId}
  and model_id= #{modelId}
  <if test="start != n
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值