Heim  >  Artikel  >  Backend-Entwicklung  >  Wie fragt man MongoDB mit Datumsbereich mit mgo und Go ab?

Wie fragt man MongoDB mit Datumsbereich mit mgo und Go ab?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-05 16:35:02417Durchsuche

How do you Query MongoDB with Date Range using mgo and Go?

Abfragen von MongoDB mit Datumsbereich mit mgo und Go

Die leistungsstarken Abfragefunktionen von MongoDB ermöglichen eine präzise Filterung von Daten basierend auf bestimmten Kriterien, einschließlich Datum Bereiche. Mit mgo, einer beliebten Go-Bibliothek für MongoDB, ist die Abfrage innerhalb von Datumsbereichen unkompliziert.

Betrachten Sie das folgende MongoDB-Dokument:

{
    "_id" : ObjectId("5458b6ee09d76eb7326df3a4"),
    "product_name" : "product1",
    "price" : 200,
    "sale_date" : ISODate("2014-11-04T11:22:19.589Z")
}

Um dieses Dokument nach Dokumenten abzufragen, die innerhalb eines bestimmten Datumsbereichs verkauft wurden können folgende Schritte durchgeführt werden:

  1. Eine Go-Struktur für Verkaufsdaten erstellen:

    <code class="go">type Sale struct {
        ProductName string    `bson:"product_name"`
        Price       int       `bson:"price"`
        SaleDate    time.Time `bson:"sale_date"`
    }</code>
  2. Datumsbereiche aus Zeichenfolgen analysieren:

    <code class="go">fromDate, err := time.Parse(timeLayout, dateFrom)
    if err != nil {
        return err
    }
    toDate, err := time.Parse(timeLayout, dateTo)
    if err != nil {
        return err
    }</code>
  3. Abfrage mit Datumsbereich:

    <code class="go">var sales []Sale
    err = c.Find(
        bson.M{
            "sale_date": bson.M{
                "$gt": fromDate,
                "$lt": toDate,
            },
        },
    ).All(&amp;sales)</code>

Durch die Verwendung der MongoDB-Operatoren $gt und $lt wählt die Abfrage Dokumente aus, bei denen das Feld „sale_date“ größer als „fromDate“ und kleiner als „toDate“ ist, wodurch effektiv Verkäufe innerhalb des angegebenen Datumsbereichs gefiltert werden.

Das obige ist der detaillierte Inhalt vonWie fragt man MongoDB mit Datumsbereich mit mgo und Go ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn