$suche - Amazon DocumentDB

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

$suche

Neu ab Version 5.0.

Der $search Operator in Amazon DocumentDB wird verwendet, um Textsuchfunktionen bereitzustellen.

Parameter

Keine

Beispiel (MongoDB Shell)

Das folgende Beispiel zeigt, wie der $search Operator verwendet wird, um eine Textsuchabfrage durchzuführen.

Erstellen Sie Beispieldokumente

db.textcollection.createIndex({"description": "text"}); db.textcollection.insertMany([ { _id: 1, name: "John Doe", description: "This is a sample document about John Doe." }, { _id: 2, name: "Jane Smith", description: "This is a sample document about Jane Smith." }, { _id: 3, name: "Bob Johnson", description: "This is a sample document about Bob Johnson." }, { _id: 4, name: "Jon Jeffries", description: "This is a sample document about Jon Jeffries." } ]);

Beispiel für eine Abfrage

db.textcollection.find( { $text: { $search: "John" } } );

Ausgabe

[ { _id: 1, name: 'John Doe', description: 'This is a sample document about John Doe.' } ]

Codebeispiele

Um ein Codebeispiel für die Verwendung des $search Befehls anzuzeigen, wählen Sie die Registerkarte für die Sprache, die Sie verwenden möchten:

Node.js
const { MongoClient } = require('mongodb'); async function findWithText() { const client = await MongoClient.connect('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false'); const db = client.db('test'); const collection = db.collection('textcollection'); const result = await collection.find( { $text: { $search: "John" } } ).sort({ score: { $meta: "textScore" } }).toArray(); console.log(result); client.close(); } findWithText();
Python
from pymongo import MongoClient def find_with_text(): client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false') db = client['test'] collection = db['textcollection'] result = list(collection.find( { '$text': { '$search': 'John' } } )) print(result) client.close() find_with_text()