我想在数据库中选择以YYYYMMDD形式存储为INT类型的日期。现在,我在这里有一个场景,用户输入他选择的日期,我想只提取低于或等于用户输入的值的日期。
我从以下sql语句开始:
"SELECT date FROM transactionRegister WHERE date<='"+dateInput+"'";
但这会加载语句所满足的所有结果,这会使我的应用程序效率低下。
我只想在光标中加载第一个结果。
答案 0 :(得分:1)
如果您想要1个结果,请通过LIMIT 1
告诉数据库。这保证了一个结果(可能不是正确的结果)。
要解决这个问题,请告诉数据库如何为“最近的第一个”ORDER BY date DESC LIMIT 1
订购结果。
答案 1 :(得分:0)
只需使用sql语句的“Limit”结尾即可。你的sql语句必须是这样的:
"SELECT date FROM transactionRegister WHERE date<='"+dateInput+"' ORDER BY date DESC Limit 1";
限制仅显示您指定的数字。例如,Limit 20只返回20行语句。