Risposte:
Una volta che ci si trova nel terminale / riga di comando, accedere al database / raccolta che si desidera utilizzare come segue:
show dbs
use <db name>
show collections
scegli la tua raccolta e digita quanto segue per vedere tutti i contenuti di quella raccolta:
db.collectionName.find()
Maggiori informazioni qui sulla Guida di riferimento rapido di MongoDB .
db.collectionName.find().pretty()
db["collection-name"].find()
Passaggio 1: visualizza tutti i tuoi database:
show dbs
Passaggio 2: selezionare il database
use your_database_name
Passaggio 3: mostra le raccolte
show collections
Questo elencherà tutte le raccolte nel database selezionato.
Passaggio 4: vedere tutti i dati
db.collection_name.find()
o
db.collection_name.find().pretty()
db.<collection_name>.find();
var collections = db.getCollectionNames();
for(var i = 0; i< collections.length; i++){
print('Collection: ' + collections[i]); // print the name of each collection
db.getCollection(collections[i]).find().forEach(printjson); //and then print the json of each of its elements
}
Penso che questo script potrebbe ottenere quello che vuoi. Stampa il nome di ogni collezione e quindi stampa i suoi elementi in json.
passaggio 1: accedere alla shell MongoDB.
mongo
passo 2: per visualizzare tutti i database.
mostra dbs;
passaggio 3: per un database selezionato:
usa 'nome_database'
passaggio 4: per le statistiche del database.
db.stats ()
passaggio 5: elencare tutte le raccolte (tabelle).
mostra raccolte
passaggio 6: stampare i dati da una particolare raccolta.
db.'collection_name'.find (). abbastanza ()
Prima di scrivere le query seguenti, accedi al tuo cmd o PowerShell
TYPE:
mongo //To get into MongoDB shell
use <Your_dbName> //For Creating or making use of existing db
Per elencare tutti i nomi delle raccolte, utilizzare uno qualsiasi delle opzioni seguenti: -
show collections //output every collection
OR
show tables
OR
db.getCollectionNames() //shows all collections as a list
Per mostrare il contenuto o i dati di tutte le raccolte, utilizzare il codice elencato di seguito che era stato pubblicato da Bruno_Ferreira.
var collections = db.getCollectionNames();
for(var i = 0; i< collections.length; i++) {
print('Collection: ' + collections[i]); // print the name of each collection
db.getCollection(collections[i]).find().forEach(printjson); //and then print the json of each of its elements
}
Per di qua:
db.collection_name.find().toArray().then(...function...)
Preferisco un altro approccio se stai usando la mongo
shell:
Prima come l'altro risponde: use my_database_name
poi:
db.getCollectionNames().map( (name) => ({[name]: db[name].find().toArray().length}) )
Questa query ti mostrerà qualcosa del genere:
[
{
"agreements" : 60
},
{
"libraries" : 45
},
{
"templates" : 9
},
{
"users" : 18
}
]
Puoi usare un approccio simile con db.getCollectionInfos()
esso è abbastanza utile se hai così tanti dati.
count()
invece di find()
:db.getCollectionNames().map( (name) => ({[name]: db[name].count()}) )