2013-04-28 70 views
1

之间我使用下面的代码,以我的约会存储在我的数据库:的Android SQLite的:日期时间查询

String mydate = java.text.DateFormat.getDateTimeInstance().format(
       Calendar.getInstance().getTime()); 

这是一个数据库中的字符串。有多个列表,我想向用户显示基于当天做出的更改。

在SQLSERVER有一个实际的日期变量,你可以在这间运行,我不知道如何与我使用的是当前的数据类型实现这一点。

有可能是保存日期更好的办法,但是这是我已经能够成功地做到这一点的唯一方法。

回答

1

如果要将日期存储为字符串,则需要指定“可比较”格式,例如YYYY-MM-DD HH:nn:ss或更短的YYYYMMDDHHnnSS。尽管将日期存储为整数时间可能会更好(自1970年以来的秒数)。如果您将索引编制为索引并对其执行比较查询,则情况尤其如此。

+0

这可能是要走的路,所有我的查询是针对日期列运行的。整数值应该更容易编写查询。我会研究这一点。 – 2013-04-28 17:35:39

2

这是一个数据库中的字符串。有多个列表,我想 显示给用户基于当天所做的更改。

您可以通过定义自定义Date模式来改善您的实际代码。您可以使用它来实现它,例如SimpleDateFormat,然后将Date作为字符串与您定义的模式一起存储。

有多个列表,我想显示给用户基于当天的变化 。

是来到我的头,第一个想法是,当你确切地知道要在其中存储您的日期格式,你可以简单地使用substr()函数从整个Date得到例如仅一天,然后比较只有天。如果你指定正确的方式为SimpleDateFormat您可以用等同将只比较几个月,等


对于测试: