Joe*_*try 0 java database sqlite loops resultset
我正在使用SQLite存储一些数据,我知道日期对象不能存储在SQLite数据库中,所以我使用的是字符串.
我的问题是我想检查表的最早日期.因此,如果有2张卡片是01/04/2013和04/05/2013,我想知道01/04/2013是更早的日期并返回该行.
到目前为止,我已经提出了两个解决方案:
对DB的多个查询
我已经能够实现一个成功的解决方案,它将遍历数据库并将日期对象减少1,然后将其用作匹配日期的字符串.问题是在找到最早的日期之前可能需要查询数据库100次.这样做是不好的做法?
通过结果集迭代
另一种可能性是迭代表中所有抽认卡的结果集.但是,这将涉及2个循环,一个循环遍历表中的每一行,这将在一个将日期减少1的循环内.
我觉得这两个都不是很好的解决方案.我想知道是否有人可以帮助我以更有效的方式实现这一目标?
如果您的日期存储YYYY-MM-DD格式,你可以使用<,>和BETWEEN你一样会与实际日期数据类型.使用YYYY-MM-DD日期格式,词典顺序与时间顺序相同.
另一个好处是YYYY-MM-DD日期格式与SQLite日期和时间函数兼容.
| 归档时间: |
|
| 查看次数: |
105 次 |
| 最近记录: |