【发布时间】:2012-12-06 19:30:16
【问题描述】:
建立索引后,我想查看索引的内容。以 MonboDB 文档为例进行说明:
{ "_id" : ObjectId("..."),
"name" : "Warm Weather",
"author" : "Steve",
"tags" : [ "weather", "hot", "record", "april" ] }
那么标签字段上的索引将具有以下值:
{ tags: "weather" }
{ tags: "hot" }
{ tags: "record" }
{ tags: "april" }
所以,我想运行一个命令,比如 db.weather._tags_.find() 来显示所述值。
问题:这样的shell命令存在吗?或者有没有办法在 C++ 驱动程序中做到这一点?
【问题讨论】:
-
index 的内容是什么意思?如果您通过标签键为您的集合建立索引,那么集合中的所有标签都包含在您的索引中。我错过了什么吗?
-
@emre nevayeshirazi 我怀疑是我错过了什么。这是一个简单的示例,但如果我尝试更复杂的示例,我想查看索引的内容以确认我的设计目标得到满足或检查是否有任何异常。
-
您也可以将 .explain() 附加到您的查询中,以查看查询是否正在使用索引。
-
@ranman 是的,我使用。我想看看索引本身,看看为什么没有使用查询。我喜欢亲身体验位、字节和字符,以增加我对幕后发生的事情的理解。
-
忽略我最后的评论。有一种方法,虽然我已经忘记了,但是有一些适用于 MongoDB 的应用程序可以做到这一点,所以有可能(我认为 MongoVUE 做到了)有人肯定会回答谁记得。 GetIndexes 将显示键,但您不会在寻找该键