Các từ và đến ngày phải là thời gian thấp nhất và thời gian cao nhất cho ngày đó, tương ứng; điều này sẽ bao gồm tất cả các giờ trong ngày.
Để sử dụng cùng một trường ("ScheduleDepDateTime") với $ và bạn phải sử dụng Criteria
của andOperator
không phải and
(xem Truy vấn AND với nhiều biểu thức chỉ định cùng một trường
).
Mã được cập nhật:
Criteria criteria = new Criteria();
criteria = criteria.and("carrierCode").is("TK");
String from = "2020-02-05 00:00:00";
String to = "2020-02-05 23:59:59";
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd H:m:s");
Date toDate = dateFormat.parse(to);
Date fromDate = dateFormat.parse(from);
criteria = criteria.andOperator(where("scheduledDepDateTime").gte(fromDate), where("scheduledDepDateTime").lte(toDate)));
// Query qry = new Query(criteria);
// List<SomeClassName> result = mongoTemplate.find(qry, SomeClassName.class, "collection_name");