所以我有一堆时间戳,我想将它们分成半小时的 block ,这样我就可以将它们显示在一个表格中,该表格显示了各自 30 分钟窗口中的所有对象。
我正在考虑遍历它们并将每个转换成一个字符串,然后它们将 2 小时和 2 分钟数字与 switch 语句进行比较,但这似乎非常乏味/低效并且容易出错。
我应该如何更有效地解决这个问题?
最佳答案
将纪元时间毫秒数除以 1800000(30 分钟,以毫秒为单位)。那现在是你的 key ;自 1970 年 1 月 1 日 0h00 世界标准时间以来,每个单位都是不同的 30 分钟。
特别是 Mysql,有 UNIX_TIMESTAMP(timefield) 以秒为单位获取它,所以在你的情况下除以 1800。这意味着如果需要,您可以在服务器端很好地执行 groupby 和 where 子句。
关于java - 将时间戳排序为半小时 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50071718/