java - 获取最近的时间 Android

标签 java android date time

我有一个日期时间值,例如“30-01-2014 22:50”。

我有相同格式的日期数据库,但数据类型是字符串。

现在我想要给定日期时间“30-01-2014 22:50”的数据库中最近的时间。

示例:

我拥有的值(value):“2014年1月30日22:50”

数据库:

"30-01-2014 02:20"
"30-01-2014 05:30" 
"30-01-2014 22:55"
"30-01-2014 10:50"
"30-01-2014 22:54"`

所以输出应该是。

“2014年1月30日22:54”

我怎样才能实现这个目标?

date1.after(date2) 和 date1.before(date3)

有没有时间函数?

谢谢

最佳答案

从每个日期对象中获取毫秒并将其添加到 map 中,然后尝试找到最近的一个。

否则,您可以使用 sql 查询直接从数据库获取最近的日期。

SELECT TOP 1 *
FROM x
WHERE x.date < @CurrentDate
ORDER BY x.date DESC

来源:Find closest date in SQL Server

在 SQl 本身中从文本转换为日期。

关于java - 获取最近的时间 Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21459982/

相关文章:

java - 如何对 LinkedHashMap<Integer, HtmlTagValues> 进行排序,其中 HtmlTagValues 是具有各种值的类?

java - 关于SortedSet接口(interface),java教程

java - 以编程方式创建的对象可以通过注释访问Spring上下文吗?

android - Material 主题工具栏上的渐变背景

android - 旋转屏幕后找不到微调器

php - 如何在 PHP 中将时间(mktime)转换为日期(mm/dd/yyyy)?

postgresql - 使用postgresql将尼泊尔语日期转换为英语日期

java - Mac上java安装在哪里。我找不到

android - 如何知道以前的位置和新的位置?

javascript - new Date() 在 Chrome 和 Firefox 中的工作方式不同