u014750748
海带七哥
采纳率0%
2017-04-07 13:57

关于在MyBatis中时间比较的问题

在MySQL数据库中字段是TimeStamp类型的,在MyBatis的Mapper中传入参数是java.util.Date类型的,怎么实现日期的比较?我试过直接用大于大小比较不对,都转化为unix时间戳再比较也不对,最后把传入参数改为日期格式的String比较然后对了。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

5条回答

  • syl2012 syl2012 4年前

    报同样的问题,该问题是怎么解决的

    点赞 评论 复制链接分享
  • xionglangs 编程爱好者熊浪 4年前

    MYSQL的string转datetime,可以试下图片说明

    点赞 评论 复制链接分享
  • u014750748 海带七哥 4年前

    图片说明
    用to_date会报这个错

    点赞 评论 复制链接分享
  • youthsunshine Youth_bj 4年前

    1.数据库时间为TimeStamp 传入的参数为 java.util.Date (需要转义)

     <if test="startDate != null">AND d_create_date &gt;= #{startDate}</if>
    

    2.数据库时间为TimeStamp 传入的参数为 String

     <if test ="startDate != null" >AND d_create_date &gt;=  to_date(#{startDate},'yyyy-MM-dd HH:mm:ss')</if>
    ```(时间to_date)
    
    
    
    
    点赞 评论 复制链接分享
  • youthsunshine Youth_bj 4年前

    1.数据库时间为TimeStamp 传入的参数为 java.util.Date AND d_create_date >= #{startDate}(需要转义)
    2.数据库时间为TimeStamp 传入的参数为 String AND d_create_date >= to_date(#{startDate},'yyyy-MM-dd HH:mm:ss') 你试试吧。

    点赞 1 评论 复制链接分享

为你推荐