在MongoDB shell中,如何列出当前使用的数据库的所有集合?
当前回答
列出mongo shell中的所有集合:
db.getCollectionNames()显示表显示表格注意:集合将显示您所在的当前数据库目前
其他回答
在>=2.x时,您可以
db.listCollections()
在1.x上,您可以做到
db.getCollectionNames()
你可以。。。
JavaScript(外壳):
db.getCollectionNames()
节点js:
db.listCollections()
非JavaScript(仅限shell):
show collections
我之所以称之为非JavaScript是因为:
$ mongo prodmongo/app --eval "show collections"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
2016-10-26T19:34:34.886-0400 E QUERY [thread1] SyntaxError: missing ; before statement @(shell eval):1:5
$ mongo prodmongo/app --eval "db.getCollectionNames()"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
[
"Profiles",
"Unit_Info"
]
如果你真的想得到甜蜜的节目集输出,你可以:
$ mongo prodmongo/app --eval "db.getCollectionNames().join('\n')"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
Profiles
Unit_Info
mongoshell上的以下命令是常见的。
show databases
show collections
而且
show dbs
use mydb
db.getCollectionNames()
有时,查看所有集合以及作为整体命名空间一部分的集合上的索引很有用:
以下是您的操作方法:
db.getCollectionNames().forEach(function(collection) {
indexes = db[collection].getIndexes();
print("Indexes for " + collection + ":");
printjson(indexes);
});
在这三个命令和这段代码之间,您应该很熟悉!
除了其他人建议的选项外:
show collections // Output every collection
show tables
db.getCollectionNames() // Shows all collections as a list
如果您想知道每个集合是如何创建的(例如,它是一个具有特定大小的上限集合),还有另一种方法非常方便:
db.system.namespaces.find()
用于显示MongoDB数据库中所有集合的命令是
show collections
在运行show collections命令之前,必须选择数据库:
use mydb // mydb is the name of the database being selected
要查看所有数据库,可以使用以下命令
show dbs // Shows all the database names present
有关详细信息,请参阅入门。
推荐文章
- elasticsearch vs . MongoDB用于过滤应用程序
- MongoDB记录所有查询
- MongoDB:如何找到安装的MongoDB的确切版本
- 如何使用mongoimport导入CSV文件?
- 在mongodb中存储日期/时间的最佳方法
- 如何排序mongodb与pymongo
- 如何在mongodb上导入。bson文件格式
- JSON文件的蒙古导入
- 如何删除mongodb中的数组元素?
- 修改MongoDB数据存储目录
- 在MongoDB中查找重复的记录
- 为什么MongoDB Java驱动在条件中使用随机数生成器?
- 在猫鼬,我如何排序的日期?(node . js)
- 将映像存储在MongoDB数据库中
- 重复Mongo ObjectId的可能性在两个不同的集合中生成?