我正在尝试编写一个SQLite语句,从用户输入(来自WPF日期选择器)获取最近的日期时间。 我有一个表IRquote(rateId, quoteDateAndTime, quoteValue)。
例如,如果用户输入10/01/2000,而数据库仅存储了08/01/2000、07/01/2000和14/01/2000的修复数据,则返回08/01/2000,作为距离10/01/2000最近的日期。
当然,我希望它不仅适用于日期,还适用于时间。
我尝试使用此查询,但它返回具有最远日期的行,而不是最接近的行:
注意,我有一个名为DateTimeSQLite的函数,可以将用户输入转换为正确的格式。
我不明白为什么这不起作用。 我该怎么做?谢谢你的帮助。
例如,如果用户输入10/01/2000,而数据库仅存储了08/01/2000、07/01/2000和14/01/2000的修复数据,则返回08/01/2000,作为距离10/01/2000最近的日期。
当然,我希望它不仅适用于日期,还适用于时间。
我尝试使用此查询,但它返回具有最远日期的行,而不是最接近的行:
SELECT quoteValue FROM IRquote
WHERE rateId = '" + pRefIndexTicker + "'
ORDER BY abs(datetime(quoteDateAndTime) - datetime('" + DateTimeSQLite(pFixingDate) + "')) ASC
LIMIT 1;
注意,我有一个名为DateTimeSQLite的函数,可以将用户输入转换为正确的格式。
我不明白为什么这不起作用。 我该怎么做?谢谢你的帮助。