Hướng dẫn node js mongodb find between dates - nút js mongodb tìm giữa các ngày

2

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi đã lưu date của mình làm dấu thời gian, sử dụng logic dưới đây:

var timestamp = Math.floor(new Date().getTime()/1000);
timestamp =145161061

Bất kỳ ai có thể giúp tôi với truy vấn?

Tôi cần tìm hồ sơ giữa ngày và ngày của tôi được lưu trữ ở định dạng dấu thời gian như được hiển thị ở trên.

Hướng dẫn node js mongodb find between dates - nút js mongodb tìm giữa các ngày

Dơi

Phim huy hiệu vàng 18,8K44 gold badges47 silver badges64 bronze badges

hỏi ngày 18 tháng 2 năm 2016 lúc 6:10Feb 18, 2016 at 6:10

Nếu bạn đã chỉ định loại trường là ngày, thì ngay cả khi bạn lưu trữ ngày bằng cách cho dấu thời gian, nó sẽ được lưu trữ như ngày.

Để thực hiện một truy vấn phạm vi vào ngày, bạn có thể chỉ cần làm điều gì đó như thế này:

db.events.find({"event_date": {
$gte: ISODate("2010-01-01T00:00:00Z"),
$lt: ISODate("2014-01-01T00:00:00Z"),}})

Nhưng sau đó nếu bạn đã chỉ định nó dưới dạng số, thì bạn chỉ cần thực hiện một truy vấn phạm vi trên số như thế này:

db.events.find({"event_date": {
$gte: 145161061,
$lt: 145178095,}})

Đã trả lời ngày 18 tháng 2 năm 2016 lúc 6:34Feb 18, 2016 at 6:34

Hướng dẫn node js mongodb find between dates - nút js mongodb tìm giữa các ngày

SiddajmerasiddajmeraSiddAjmera

36,5K5 Huy hiệu vàng63 Huy hiệu bạc103 Huy hiệu Đồng5 gold badges63 silver badges103 bronze badges

Bạn có thể thử loại truy vấn này:

var startTime = 145161061;
var endTime = 149161061;
Books.find({
    created_at: {
        $gt: startTime,
        $lt: endTime
    } 
});

Đã trả lời ngày 18 tháng 2 năm 2016 lúc 6:36Feb 18, 2016 at 6:36

Haotangaotanghaotang

5.40233 Huy hiệu bạc43 Huy hiệu đồng33 silver badges43 bronze badges

Tài liệu về nhà → node.jsNode.js

Bạn có thể truy vấn cho nhiều tài liệu trong một bộ sưu tập với collection.find(). Phương thức find() sử dụng tài liệu truy vấn mà bạn cung cấp để khớp với tập hợp con của các tài liệu trong bộ sưu tập phù hợp với truy vấn. Nếu bạn không cung cấp tài liệu truy vấn (hoặc nếu bạn cung cấp một tài liệu trống), MongoDB sẽ trả lại tất cả các tài liệu trong bộ sưu tập. Để biết thêm thông tin về truy vấn MongoDB, hãy xem tài liệu của chúng tôi về các tài liệu truy vấn.

Bạn cũng có thể xác định các tùy chọn truy vấn bổ sung như sắp xếp và chiếu để định cấu hình tập kết quả. Bạn có thể chỉ định những điều này trong tham số Tùy chọn trong cuộc gọi phương thức find() của mình trong các đối tượng ____10 và

db.events.find({"event_date": {
$gte: ISODate("2010-01-01T00:00:00Z"),
$lt: ISODate("2014-01-01T00:00:00Z"),}})
1. Xem Collection.find () để biết thêm thông tin về các tham số bạn có thể chuyển sang phương thức.collection.find() for more information on the parameters you can pass to the method.

Phương pháp find() trả về một findcursor quản lý kết quả truy vấn của bạn. Bạn có thể lặp lại thông qua các tài liệu phù hợp bằng cách sử dụng một trong các phương thức con trỏ sau:FindCursor that manages the results of your query. You can iterate through the matching documents using one of the following cursor methods:

  • db.events.find({"event_date": {
    $gte: ISODate("2010-01-01T00:00:00Z"),
    $lt: ISODate("2014-01-01T00:00:00Z"),}})
    
    3

  • db.events.find({"event_date": {
    $gte: ISODate("2010-01-01T00:00:00Z"),
    $lt: ISODate("2014-01-01T00:00:00Z"),}})
    
    4

  • db.events.find({"event_date": {
    $gte: ISODate("2010-01-01T00:00:00Z"),
    $lt: ISODate("2014-01-01T00:00:00Z"),}})
    
    5

Nếu không có tài liệu nào khớp với truy vấn, find() sẽ trả về một con trỏ trống.

Đoạn trích sau đây tìm thấy các tài liệu từ bộ sưu tập

db.events.find({"event_date": {
$gte: ISODate("2010-01-01T00:00:00Z"),
$lt: ISODate("2014-01-01T00:00:00Z"),}})
7. Nó sử dụng các tham số sau:

  • Một tài liệu truy vấn định cấu hình truy vấn chỉ trả về các bộ phim với thời gian chạy dưới 15 phút.query document that configures the query to return only movies with a runtime of less than 15 minutes.

  • Một loại tổ chức các tài liệu được trả lại theo thứ tự tăng dần theo tiêu đề (thứ tự bảng chữ cái trong đó "A" đến trước "z" và "1" trước "9").sort that organizes returned documents in ascending order by title (alphabetical order in which "A" comes before "Z" and "1" before "9").

  • Một dự báo loại trừ rõ ràng trường

    db.events.find({"event_date": {
    $gte: ISODate("2010-01-01T00:00:00Z"),
    $lt: ISODate("2014-01-01T00:00:00Z"),}})
    
    8 khỏi các tài liệu được trả về và chỉ bao gồm một cách rõ ràng chỉ bao gồm đối tượng
    db.events.find({"event_date": {
    $gte: ISODate("2010-01-01T00:00:00Z"),
    $lt: ISODate("2014-01-01T00:00:00Z"),}})
    
    9 và
    db.events.find({"event_date": {
    $gte: 145161061,
    $lt: 145178095,}})
    
    0 (và các trường được nhúng của nó).projection that explicitly excludes the
    db.events.find({"event_date": {
    $gte: ISODate("2010-01-01T00:00:00Z"),
    $lt: ISODate("2014-01-01T00:00:00Z"),}})
    
    8 field from returned documents and explicitly includes only the
    db.events.find({"event_date": {
    $gte: ISODate("2010-01-01T00:00:00Z"),
    $lt: ISODate("2014-01-01T00:00:00Z"),}})
    
    9 and
    db.events.find({"event_date": {
    $gte: 145161061,
    $lt: 145178095,}})
    
    0 object (and its embedded fields).

Ghi chú

Bạn có thể sử dụng ví dụ này để kết nối với một thể hiện của MongoDB và tương tác với cơ sở dữ liệu có chứa dữ liệu mẫu. Để tìm hiểu thêm về việc kết nối với thể hiện MongoDB của bạn và tải một bộ dữ liệu mẫu, hãy xem Hướng dẫn sử dụng ví dụ.

Nếu bạn chạy ví dụ trước, bạn sẽ thấy đầu ra sau:

{ title: '10 Minutes', imdb: { rating: 7.9, votes: 743, id: 339976 } }
{ title: '3x3', imdb: { rating: 6.9, votes: 206, id: 1654725 } }
{ title: '7:35 in the Morning', imdb: { rating: 7.3, votes: 1555, id: 406501 } }
{ title: '8', imdb: { rating: 7.8, votes: 883, id: 1592502 } }
...

Các tùy chọn

db.events.find({"event_date": {
$gte: ISODate("2010-01-01T00:00:00Z"),
$lt: ISODate("2014-01-01T00:00:00Z"),}})
0 và
db.events.find({"event_date": {
$gte: ISODate("2010-01-01T00:00:00Z"),
$lt: ISODate("2014-01-01T00:00:00Z"),}})
1 cũng có thể được chỉ định là các phương thức (tương ứng
db.events.find({"event_date": {
$gte: 145161061,
$lt: 145178095,}})
3 và
db.events.find({"event_date": {
$gte: 145161061,
$lt: 145178095,}})
4) được xếp theo phương thức
db.events.find({"event_date": {
$gte: 145161061,
$lt: 145178095,}})
5. Hai lệnh sau là tương đương:

collection.find({ runtime: { $lt: 15 } }, { sort: { title: 1 }, projection: { _id: 0, title: 1, imdb: 1 }});
collection.find({ runtime: { $lt: 15 } }).sort({ title: 1}).project({ _id: 0, title: 1, imdb: 1 });