我正在基于MSSQL数据库中的数据创建sails.js REST-API。每个记录都有一个开始日期和一个结束日期。我想提供一个查询日期,并找到所有“开始”而不是“结束”的记录。所以从概念上讲,我在想:
SELECT * FROM table WHERE
record_start_date <= query_date
AND
record_end_date >= query_date
在水线/帆中,它看起来像这样:
Model.find({
record_start_date: { 'lessThanOrEqual': req.query.q + ' 00:00:00.0'},
record_end_date: { 'greaterThanOrEqual': req.query.q + ' 23:59:00.0' }
})
然而,这只是给了我记录他们之间的那年秋天,而不是在开始OG结束日期。
看来您需要在FIND内交换时间:
Model.find({
record_start_date: { 'lessThanOrEqual': req.query.q + ' 23:59:00.0'},
record_end_date: { 'greaterThanOrEqual': req.query.q + ' 00:00:00.0' }
})
考虑记录具有开始日期3/20和结束日期3/25的情况。如果您传递的查询日期为3/25,则如果在其后附加“ 23:59”(如您最初所做的那样),那么record_end_date将不满足大于或等于条件。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句