[MONGODB] MongoDB를 / 몽구스 특정 날짜에 쿼리?
MONGODBMongoDB를 / 몽구스 특정 날짜에 쿼리?
그것은 특정 날짜를 조회 할 수 있습니까?
나는 우리가 날짜 범위에 대한 범위 쿼리을 위해 할 수있는 몽고 요리 책에서 발견 그와 마찬가지로 :
db.posts.find({"created_on": {"$gte": start, "$lt": end}})
그러나 특정 날짜 수 있습니까? 이 작동하지 않습니다
db.posts.find({"created_on": new Date(2012, 7, 14) })
해결법
-
==============================
1.당신은 DB에 저장된 날짜 시간없이 (단지 년, 월, 일) 경우 그 작동합니다.
당신은 DB에 저장된 날짜 시간없이 (단지 년, 월, 일) 경우 그 작동합니다.
기회는 저장 한 날짜의 시간 구성 요소가 포함되어 새 Date ()이라고한다. 당신은 하루의 모든 순간을 포함하는 날짜 범위를 작성해야 그 시간을 조회하려면.
db.posts.find( //query today up to tonight {"created_on": {"$gte": new Date(2012, 7, 14), "$lt": new Date(2012, 7, 15)}})
-
==============================
2.
const moment = require('moment') const today = moment().startOf('day') MyModel.find({ createdAt: { $gte: today.toDate(), $lte: moment(today).endOf('day').toDate() } })
중요 : 모든 순간이 변경할 수 있습니다!
내일 = 넣자 (1, '일') 또한 변이 오늘부터 작동하지 않습니다. 호출 순간 (오늘)로 해결할 수있는 문제가 암시 오늘 복제에 의해 문제.
-
==============================
3.단지 날짜 값과 비교하는 작업을하지 않도록 그래, Date 객체는 날짜와 시간을 complects.
단지 날짜 값과 비교하는 작업을하지 않도록 그래, Date 객체는 날짜와 시간을 complects.
당신은 단순히 작업자가 자바 스크립트 부울 표현식 더 복잡한 조건을 표현하는 $를 사용할 수 있습니다 :
db.posts.find({ '$where': 'this.created_on.toJSON().slice(0, 10) == "2012-07-14"' })
created_on는 날짜 필드와 2012년 7월 14일는 지정된 날짜입니다.
날짜는 YYYY-MM-DD 형식으로 정확히해야한다.
참고 : 드물게, 그것은 성능에 영향을 가지고 어디에 사용이 $.
-
==============================
4.당신이 시도 유무 :
당신이 시도 유무 :
db.posts.find({"created_on": {"$gte": new Date(2012, 7, 14), "$lt": new Date(2012, 7, 15)}})
당신이로 실행하는거야 문제는 날짜가 몽고에서 타임 스탬프로 저장되어 있다는 점이다. 그래서, 당신은 타임 스탬프를 일치하도록 요구하고 날짜하였습니다. 귀하의 경우에는 당신이 (특정 일 23:59에 예. 0시에서) 하루에 일치하려는 생각합니다. 날짜는 시간없이 저장되어있는 경우에 당신은 괜찮을 것 같네요. 그렇지 않으면, 같은 날 시간의 범위로 날짜를 지정하십시오 (예 = 00 시작합니다. 00, 끝 = 23 : 59) GTE 일을하지 않는 경우.
비슷한 질문
-
==============================
5.당신은 특정 일의 결과를 얻기 위해 API 방법에 대한 다음과 같은 방법을 사용할 수 있습니다 :
당신은 특정 일의 결과를 얻기 위해 API 방법에 대한 다음과 같은 방법을 사용할 수 있습니다 :
# [HTTP GET] getMeals: (req, res) -> options = {} # eg. api/v1/meals?date=Tue+Jan+13+2015+00%3A00%3A00+GMT%2B0100+(CET) if req.query.date? date = new Date req.query.date date.setHours 0, 0, 0, 0 endDate = new Date date endDate.setHours 23, 59, 59, 59 options.date = $lt: endDate $gte: date Meal.find options, (err, meals) -> if err or not meals handleError err, meals, res else res.json createJSON meals, null, 'meals'
-
==============================
6.우리는 내가 우리가 참조 할 수 있도록 문제를 해결하는 방법을 추가 할 줄 알았는데 1을 의미 한 곳 날짜 필드는 여러 값을 갖는 우리의 데이터베이스에 중복 데이터와 관련된 문제를 가지고 있었다.
우리는 내가 우리가 참조 할 수 있도록 문제를 해결하는 방법을 추가 할 줄 알았는데 1을 의미 한 곳 날짜 필드는 여러 값을 갖는 우리의 데이터베이스에 중복 데이터와 관련된 문제를 가지고 있었다.
우리는 숫자 "값"필드와 날짜 "날짜"필드 "데이터"라는 컬렉션이 있습니다. 우리는 우리가 생각 나무 등이었다 과정을했지만, 두 번째 실행에 하루에 2 개 값을 추가 결국 :
{ "_id" : "1", "type":"x", "value":1.23, date : ISODate("2013-05-21T08:00:00Z")} { "_id" : "2", "type":"x", "value":1.23, date : ISODate("2013-05-21T17:00:00Z")}
우리는 그래서 DB를 정리하기 위해 자바 스크립트 리조트했다, 2 개 개의 기록의 1이 필요합니다. 우리의 초기 접근 방식은 결과를 통해 반복 될 시부 터 오전 6 오전 11시 사이의 시간 (모든 중복 아침에 있었다) 어떤 필드를 제거하려고하지만, 구현시, 변경되었다. 여기를 해결하는 데 사용되는 스크립트입니다 :
var data = db.data.find({"type" : "x"}) var found = []; while (data.hasNext()){ var datum = data.next(); var rdate = datum.date; // instead of the next set of conditions, we could have just used rdate.getHour() and checked if it was in the morning, but this approach was slightly better... if (typeof found[rdate.getDate()+"-"+rdate.getMonth() + "-" + rdate.getFullYear()] !== "undefined") { if (datum.value != found[rdate.getDate()+"-"+rdate.getMonth() + "-" + rdate.getFullYear()]) { print("DISCREPENCY!!!: " + datum._id + " for date " + datum.date); } else { print("Removing " + datum._id); db.data.remove({ "_id": datum._id}); } } else { found[rdate.getDate()+"-"+rdate.getMonth() + "-" + rdate.getFullYear()] = datum.value; } }
다음 몽고 thedatabase fixer_script.js 그것을 실행
from https://stackoverflow.com/questions/11973304/mongodb-mongoose-querying-at-a-specific-date by cc-by-sa and MIT license
'MONGODB' 카테고리의 다른 글
[MONGODB] MongoDB의 두 컬렉션을 병합 (0) | 2019.12.03 |
---|---|
[MONGODB] 작동하지 않는 것 MongoDB를에 ISODate와 날짜 쿼리 (0) | 2019.12.03 |
[MONGODB] 어떻게 고정 표시기-작성을 사용하여 몽고 데이터베이스를 씨앗합니까? (0) | 2019.12.03 |
[MONGODB] MongoDB를 데이터베이스에 저장 이미지 (0) | 2019.12.03 |
[MONGODB] pymongo와 정규식 쿼리 수행 (0) | 2019.12.03 |