2013-10-15 41 views
0

我想选择一个以YYYYMMDD格式存储为数据库中INT类型的日期。现在,在这里我有一个场景,用户输入他选择的日期,并且我只想提取低于或等于用户输入值的日期。SQLite日期提取技术

我开始用下面的SQL语句:

"SELECT date FROM transactionRegister WHERE date<='"+dateInput+"'"; 

但这将加载所有这些都通过,这将只是让我的应用程序效率低下的声明感到满意的结果。

我只想将第一个结果加载到游标中。

回答

1

如果你想要1个结果,告诉数据库,通过LIMIT 1。这保证了一个结果(可能不是正确的结果)。

要解决这个问题,请告诉DB如何订购结果,“最接近的第一个”ORDER BY date DESC LIMIT 1

0

只需使用“限制”结束您的SQL语句。你的sql语句必须是这样的:

"SELECT date FROM transactionRegister WHERE date<='"+dateInput+"' ORDER BY date DESC Limit 1"; 

限制只显示你指定的数字。例如限制20只返回您的语句的20行。