View a markdown version of this page

elenco $ SearchIndexes - Amazon DocumentDB

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

elenco $ SearchIndexes

Nuovo dalla versione 8.0.1.

La fase di $listSearchIndexes aggregazione in Amazon DocumentDB restituisce informazioni sugli indici di ricerca esistenti in una raccolta. Deve essere la prima fase di una pipeline di aggregazione.

Parametri

  • name: (opzionale) Il nome dell'indice di ricerca su cui restituire informazioni. Se omesso, vengono restituiti tutti gli indici di ricerca della raccolta.

Campi di output

Ogni documento restituito contiene i seguenti campi:

  • name: il nome dell'indice di ricerca.

  • status: lo stato di compilazione dell'indice. Uno tra READY (compilato e valido), BUILDING (è in corso una compilazione simultanea) o FAILED (la compilazione dell'indice non è stata completata correttamente).

  • queryable: un valore booleano che indica se l'indice può essere attualmente utilizzato per fornire query. Questo è false per gli indici nascosti (che rimangonoREADY) e per gli indici. FAILED Un indice nascosto è il caso in cui status è ma è. READY queryable false

  • latestDefinitionVersion: un documento contenente version (la versione del formato dell'indice) e createdAt (l'ora di creazione dell'indice).

Sintassi

db.collection.aggregate([ { $listSearchIndexes: {} } ]) // Or filter by name: db.collection.aggregate([ { $listSearchIndexes: { name: "mySearchIndex" } } ])

Esempio (MongoDB Shell)

L'esempio seguente mostra come utilizzare lo $listSearchIndexes stage per elencare tutti gli indici di ricerca in una raccolta.

Esempio di interrogazione

db.movies.aggregate([ { $listSearchIndexes: {} } ]);

Output

[ { "name": "default", "status": "READY", "queryable": true, "latestDefinitionVersion": { "version": 2, "createdAt": ISODate("2026-05-11T21:12:57.974Z") } } ]

Un indice nascosto rimane READY ma riportaqueryable: false, perché non può essere utilizzato per fornire interrogazioni mentre è nascosto:

[ { "name": "myHiddenIndex", "status": "READY", "queryable": false, "latestDefinitionVersion": { "version": 2, "createdAt": ISODate("2026-05-11T21:12:57.974Z") } } ]

Per filtrare in base a un nome di indice specifico:

db.movies.aggregate([ { $listSearchIndexes: { name: "default" } } ]);

Esempi di codice

Per visualizzare un esempio di codice per l'utilizzo $listSearchIndexes dello stage, scegli la scheda relativa alla lingua che desideri utilizzare:

Node.js
const { MongoClient } = require('mongodb'); async function example() { const client = new MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false'); try { await client.connect(); const db = client.db('test'); const collection = db.collection('movies'); // List all search indexes const allIndexes = await collection.aggregate([ { $listSearchIndexes: {} } ]).toArray(); console.log('All search indexes:', allIndexes); // List a specific search index by name const namedIndex = await collection.aggregate([ { $listSearchIndexes: { name: "default" } } ]).toArray(); console.log('Named index:', namedIndex); } finally { await client.close(); } } example();
Python
from pymongo import MongoClient def example(): client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false') try: db = client['test'] collection = db['movies'] # List all search indexes all_indexes = list(collection.aggregate([ { '$listSearchIndexes': {} } ])) print('All search indexes:', all_indexes) # List a specific search index by name named_index = list(collection.aggregate([ { '$listSearchIndexes': { 'name': 'default' } } ])) print('Named index:', named_index) finally: client.close() example()