我有一个表(t1),其中包含诸如
| id | timestamp | att1 | att2 |
现在,我必须遍历类型为att1的元素的集合,并从t1获取所有记录,该记录介于此att1的两个特定时间戳之间。对于单个att1,我必须多次执行此操作。
因此,为了简化数据库查询,我打算将t1中具有特定att1属性的每个条目一次加载到集合中,然后对该集合执行后续搜索。
是否存在可以处理“ 2011-02-06 09:00:00”和“ 2011-02-06 09:00:30”之间的搜索的集合?不保证包含这两个时间戳的条目。
在为此编写实现之前(很可能是非常慢的实现^^),我想问你们是否已经有一些现有的集合,或者我该如何解决这个问题。
谢谢!
最佳答案
是。使用TreeMap,它基本上是键=>值对及其方法TreeMap::subMap(fromKey, toKey)的排序映射。
在您的情况下,您可以将时间戳记用作地图的键,并将att1属性或id或其他任何对您而言最方便的值用作键。