Heim >Backend-Entwicklung >Golang >Wie frage ich MongoDB-Datumsbereiche mit Mgo und Go ab?

Wie frage ich MongoDB-Datumsbereiche mit Mgo und Go ab?

Linda Hamilton
Linda HamiltonOriginal
2024-11-08 04:35:01682Durchsuche

How to Query MongoDB Date Ranges with Mgo and Go?

Abfragen des MongoDB-Datumsbereichs mit Mgo und Go

In MongoDB können Dokumente basierend auf Datumsbereichen abgefragt werden. Um dies in Go mit mgo zu erreichen, können die folgenden Schritte unternommen werden:

Definieren Sie eine Struktur für das Dokument

Angenommen, eine Sammlung mit dem Namen „my_sales“ hat die folgenden Felder: „product_name , „Preis“ und „Verkaufsdatum“. Eine entsprechende Go-Struktur kann wie folgt definiert werden:

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

Abfrage mit mgo

Sobald die Struktur definiert ist, können Sie mit der Abfrage mit mgo fortfahren. Betrachten Sie das folgende Beispiel:

<code class="go">fromDate := time.Date(2014, time.November, 4, 0, 0, 0, 0, time.UTC)
toDate := time.Date(2014, time.November, 5, 0, 0, 0, 0, time.UTC)

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

Hier werden die Operatoren $gt (größer als) und $lt (kleiner als) verwendet, um den gewünschten Datumsbereich für das Feld „sale_date“ anzugeben. Das Ergebnis wird im sales_his-Slice gespeichert.

Das obige ist der detaillierte Inhalt vonWie frage ich MongoDB-Datumsbereiche 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