Heim > Backend-Entwicklung > Golang > Wie schließe ich Felder in MongoDB-Abfrageergebnissen mit mongo-go-driver ein oder aus?

Wie schließe ich Felder in MongoDB-Abfrageergebnissen mit mongo-go-driver ein oder aus?

DDD
Freigeben: 2024-12-15 14:57:22
Original
797 Leute haben es durchsucht

How to Include or Exclude Fields in MongoDB Query Results using mongo-go-driver?

Einschließen oder Ausschließen von Feldern in Abfrageergebnissen mit mongo-go-driver

Der mongo-go-driver bietet einen Mechanismus zum Filtern von Feldern Abfrageergebnisse, sodass Sie je nach Ihren Anforderungen bestimmte Felder einschließen oder ausschließen können. Wenn Sie jedoch versuchen, die Option findopt.Projection zu verwenden, können Probleme auftreten, wenn die Feldnamen nicht korrekt exportiert werden.

Um dieses Problem zu beheben, stellen Sie sicher, dass Ihre Feldnamen mit einem Großbuchstaben beginnen, der auf exportierte Felder hinweist. Darüber hinaus können Sie Struktur-Tags verwenden, um die MongoDB-Feldnamen Ihren Go-Strukturfeldern zuzuordnen, wie im folgenden Beispiel gezeigt:

type fields struct {
    ID int16 `bson:"_id"`
}
Nach dem Login kopieren

Wenn die Feldnamen ordnungsgemäß exportiert sind, können Sie eine Abfrage mithilfe einer Projektion durchführen wie folgt:

var opts []*find.FindOptions
projection := fields{
    ID: 0,
}
opts = append(opts, find.Projection(projection))
s := bson.NewDocument()
filter := bson.NewDocument(bson.EC.ObjectID("_id", starterId))
staCon.Collection.FindOne(nil, filter, opts...).Decode(s)
Nach dem Login kopieren

Alternativ können Sie eine bson.M-Karte verwenden, um die Projektion anzugeben:

options := find.FindOptions{}
options.Projection = bson.M{"_id": 0}
result := staCon.Collection.FindOne(nil, filter, &options).Decode(s)
Nach dem Login kopieren

By Mithilfe geeigneter Feldexporte und einer Projektion können Sie Felder effektiv aus Ihren MongoDB-Abfrageergebnissen filtern und die Antworten an Ihre spezifischen Anforderungen anpassen.

Das obige ist der detaillierte Inhalt vonWie schließe ich Felder in MongoDB-Abfrageergebnissen mit mongo-go-driver ein oder aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage