0

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

我从以下 sql 语句开始:

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

但这会加载语句满足的所有结果,这只会使我的应用程序效率低下。

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

4

2 回答 2

1

如果您想要 1 个结果,请通过LIMIT 1. 这保证了一个结果(可能不是正确的结果)。

要解决这个问题,请告诉数据库如何为“最近的优先”排序结果ORDER BY date DESC LIMIT 1

于 2013-10-15T20:30:52.997 回答
0

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

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

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

于 2013-10-15T20:32:17.953 回答