当前位置: 首页 > 面试题库 >

如何从SQLite获取最近3个小时的数据

尹正奇
2023-03-14
问题内容

我正在使用当前系统时间在表中插入数据,例如 System.currentTimeMillis()。因此,在获取数据时,我仅需要获取最后3个小时的数据。

以下链接对我没有帮助。因为此链接使用的是我没有的特定日期格式。
从SQLite获取根据过去小时的数据

这是我的查询,但似乎无法正常工作。

SELECT * FROM Table1 where timestamp >= datetime('now','-3 hours')

插入时时间戳只不过是当前系统时间。

请给我任何参考或提示。


问题答案:

您可以使用以下方法获取3小时的时间戳记

Calendar cal = Calendar.getInstance();
cal.add(Calendar.HOUR, -3);
Date threeHourBack = cal.getTime();

然后,您可以传递threeHourBack.getTime()给查询。

或者您可以在SQLite中执行此操作

SELECT * FROM Table1 where datetime(timestamp) >=datetime('now', '-3 Hour')


 类似资料:
  • 我正在从事一个小型Drools项目,因为我想了解更多关于使用规则引擎的知识。我有一个名为Event的类,它有以下字段: <代码>字符串标记 可以是任何字符串的标记 我在我的知识库中插入了数百个事件实例,现在我想得到3个最近的事件,它们都标记为“OK”(确定)。我想出了以下代码,它可以工作: 但是我有一种感觉,应该有更好的方法来做到这一点。这很冗长,不容易重复使用:如果我想获取具有

  • 问题内容: 我有这个; 但这是行不通的。我想在24小时内向所有新用户展示 问题答案: 您可以使用以下命令在MySQL中完全执行该查询 该表达式返回24小时前的日期。MySql很聪明,可以处理与时间相关的列类型之间的比较。 如果不是与时间相关的类型,而是类似varchar或int列的类型,则必须在该列上使用或调整上面的查询以读取 请参见MySql手册中的DATE_SUB和DATE_ADD。

  • 这是正确的工作,但它绘制了许多标记的坐标小于600米的用户的位置。我想要的是只在折线的最近点画一个标记。某种程度上评估来自用户的<600的所有coord,然后选择最接近的。感谢任何帮助。

  • 问题内容: 我需要在活动中获得并显示照片库中最近拍摄的3张照片,而无需任何点击。 完成此步骤后,滚动时,我应该以3 x 3的方式拍摄其他照片。 您知道快速执行此操作的正确方法吗?谢谢。 问题答案: 这是使用适用于iOS 8+设备的框架的解决方案:

  • 问题内容: 是否可以从cordova-sqlite同步获取数据? 我有一个带有字段(ID,caseName,日期)的表。该表中的每一行都对应于另一个以caseName字段命名的表。我需要遍历该表并获取所引用表中的行数计数。 为了在列表视图中显示“ i”的值,我需要显示该表中有多少个元素。我需要调用同步,因为我需要调用一些查询,该查询计算该元素中“ result.rows.item(i).CaseN

  • 问题内容: 我想从整数中检索要存储在表中的左3个数字。例如,如果int是1234567,则我想检索123。我希望第二个数字(123)也可以是int。我不想将任何内容转换为字符串。 (是的,确实我应该使用字符串。但是我无法控制问题的这一方面。) 谢谢! 问题答案: 对于SQL Server, 最简单的 方法肯定是: 转换为字符串,使用最左边的三个字符,然后将其转换回INT。 由于仅需要知道要去除多少