Node.js MongoDB- Abfrage


Filtern Sie das Ergebnis

Beim Suchen von Dokumenten in einer Sammlung können Sie das Ergebnis filtern, indem Sie ein Abfrageobjekt verwenden.

Das erste Argument der find()Methode ist ein Abfrageobjekt und wird verwendet, um die Suche einzuschränken.

Beispiel

Dokumente mit der Adresse "Park Lane 38" finden:

var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/";

MongoClient.connect(url, function(err, db) {
  if (err) throw err;
  var dbo = db.db("mydb");
  var query = { address: "Park Lane 38" };
  dbo.collection("customers").find(query).toArray(function(err, result) {
    if (err) throw err;
    console.log(result);
    db.close();
  });
});

Speichern Sie den obigen Code in einer Datei namens "demo_mongodb_query.js" und führen Sie die Datei aus:

Führen Sie "demo_mongodb_query.js" aus

C:\Users\Your Name>node demo_mongodb_query.js

Was Ihnen dieses Ergebnis geben wird:

[
  { _id: 58fdbf5c0ef8a50b4cdd9a8e , name: 'Ben', address: 'Park Lane 38' }
]


Filtern mit regulären Ausdrücken

Sie können reguläre Ausdrücke schreiben, um genau das zu finden, wonach Sie suchen.

Reguläre Ausdrücke können nur zum Abfragen von Zeichenfolgen verwendet werden .

Um nur die Dokumente zu finden, bei denen das Feld „Adresse“ mit dem Buchstaben „S“ beginnt, verwenden Sie den regulären Ausdruck /^S/:

Beispiel

Finden Sie Dokumente, bei denen die Adresse mit dem Buchstaben "S" beginnt:

var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/";

MongoClient.connect(url, function(err, db) {
  if (err) throw err;
  var dbo = db.db("mydb");
  var query = { address: /^S/ };
  dbo.collection("customers").find(query).toArray(function(err, result) {
    if (err) throw err;
    console.log(result);
    db.close();
  });
});

Speichern Sie den obigen Code in einer Datei namens „demo_mongodb_query_s.js“ und führen Sie die Datei aus:

Führen Sie "demo_mongodb_query_s.js" aus

C:\Users\Your Name>node demo_mongodb_query_s.js

Was Ihnen dieses Ergebnis geben wird:

[
  { _id: 58fdbf5c0ef8a50b4cdd9a8b , name: 'Richard', address: 'Sky st 331' },
  { _id: 58fdbf5c0ef8a50b4cdd9a91 , name: 'Viola', address: 'Sideway 1633' }
]