如何使用Joda DateTime日期作为Room中的ID,或如何在查询中获取日期? [英] How to use Joda DateTime date as id in Room, or how to get date in query?

查看:452
本文介绍了如何使用Joda DateTime日期作为Room中的ID,或如何在查询中获取日期?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要编写一个使用日期作为id的应用程序,并且我必须能够仅通过比较日期来进行更新

I need to write an app that uses date as id, and I must be able to update just by comparing date

@Entity
data class DailyCount(@PrimaryKey
                  var date:DateTime,
                  var summ: Double = 0.0)

这是DAO

@Query("update DailyCount set summ = :sum where date = :today")
fun updateCash(today: DateTime, sum: Double)

我要这样:

@Entity
data class DailyCount(@PrimaryKey
                  var date:Date,//JodaTime containing only date
                  var summ: Double = 0.0)

或者像这样:

@Query("update DailyCount set summ = :sum where date.today = :dateArg.today")
fun updateCash(dateArg: DateTime, sum: Double)

推荐答案

我需要编写此查询:

@Query("update DailyCount set summ = :sum where date between  :startTimeOfDay and :endTimeOfDay")
fun updateCash(startTimeOfDay: DateTime, endTimeOfDay: DateTime, sum: Double)

我在这里给出了开始时间和结束时间的范围.当我想在今天的ID中设置信息时,此方法返回true

I gave here a range with start and end time. This approach returns true when I want to set info in today's Id

这篇关于如何使用Joda DateTime日期作为Room中的ID,或如何在查询中获取日期?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆