sabato 19 luglio 2025

MongoDB la ricerca dei dati tramite il programma MongoDB Compass

Introduzione

In questo nuovo articolo, vedremo come effettuare la ricerca dei dati tramite MongoDB Compass e tramite comandi da shell.
Può tornare utile la ricerca dei documenti, informazioni o altro all’interno di questo database NoSql .
In questo articolo avremo alcuni aspetti introduttivi nel ricercare i dati.

La ricerca

Una volta aperto MongoDB Compass, possiamo utilizzare il database che abbiamo utilizzato negli articoli precedenti, oppure uno esistente nel quale sono presenti dati per effettuare delle prove.
Su una determinata collection, facciamo click sul pulsante “Open MongoDB Shell”, in modo che apre il prompt per eseguire le operazioni a riga di comando.
La ricerca dei dati, avviene tramite il metodo “Find” della collection, ma per dare una formattazione visiva, stile Json, occorre utilizzare il metodo Pretty.
Di seguito il comando che estrapola tutti i dati della collection “test2”, con la relativa immagina (figura 1).


Query

db.test2.find().pretty()


MongoDB ricerca dei documenti
Figura 1 – I dati estrapolati

In questo modo verranno visualizzati tutti i dati presenti nella collection.
Se invece desideriamo estrapolare solo il primo dato, dobbiamo utilizzare il metodo findOne(), di seguito si riporta  la query e la relativa immagine.

Query

db.test2.findOne()



MongoDB ricerca dei documenti
Figura 2 – La ricerca del primo documento

Nel momento in cui si digita il nome della funzione o tabella, il prompt dei comandi ci fornisce dei suggerimenti, il tutto come mostrato in figura 3.

MongoDB ricerca dei documenti
Figura 3 – Il prompt con i suggerimenti

Nel caso che vogliamo usare lo strumento di interfaccia grafica di MongoDB Compass, nella casella della ricerca, quella che si trova sopra ai pulsanti “add Data”, “Export Data”, etc ., tra parentesi graffe, digitiamo il nome del campo seguito da due puntini ed il valore di ricerca. Di seguito si riporta la query per cercare tutti quei dati che hanno nel campo “Nome”, il valore “Luigi”. La ricerca viene effettuata tenendo conto anche delle maiuscole e minuscole.
Query

{"nome" : "Luigi" } 


MongoDB ricerca dei documenti
Figura 4 -La ricerca per il campo nome

Possiamo fare la ricerca anche tramite espressioni regolari utilizzando anche in questo caso l’interfaccia grafica . 
Nel filtro possiamo indicare alcuni parametri di ricerca, per esempio di estrapolare tutti quei dati, dove nel campo nome contiene un determinato testo senza considerare maiuscole e minuscole.
Di seguito un esempio di come estrapolare tutti i dati che contengono nel campo “Nome”, il valore “ema”, indistintamente se è maiuscolo e minuscolo.


{ "nome": { "$regex": "^ema", "$options": "i" } }


Il risultato sarà come mostrato in figura 5.



MongoDB ricerca dei documenti
Figura 5 – Il risultato della ricerca

Utilizzando la shell di MongoDB Compass, possiamo ottenere il numero dei documenti di una determinata Collection, tramite il metodo “countDocuments”.
Di seguito si riporta la query rilevare il numero totale dei documenti presenti nella collection “test2”.
Query

db.test2.countDocuments()



MongoDB ricerca dei documenti
Figura 6 – Il risultato del numero dei documenti

Nel caso che abbiamo necessitò di sapere quanti documenti sono presenti nella collectioni, in base ad un valore di un campo, nel metodo countDocuments va inserita la condizione.
Di seguito si riporta la query, che fornisce il numero totale dei documenti il quale criterio di ricerca è il campo nome con il valore “Luigi”, con la lettera “L” maiuscola.
Query

db.test2.countDocuments({nome:"Luigi"})





MongoDB ricerca dei documenti
Figura 7 – Il totale dei documenti che rispetta la condizione di ricerca


Conclusioni

L’articolo ha fornito al lettore, le basi per effettuare le ricerche in questo database NoSQl, fornendo le operazioni più comuni e basilari. La flessibilità di questo database consente ad ogni utente di gestire i dati in maniera molto semplice e soprattutto di facile utilizzo.  Gli esempi illustrati in questo articolo introduttivo alla ricerca dei documenti, permettono al lettore di acquisire le nozioni di base, va ricordato che si possono eseguire operazioni di ricerca dei dati anche in forma più complessa. 

Nessun commento: