所以我需要一些关于我做错了什么的建议。
我的数据库的设置与由folders
和组成的文件系统完全一样files
。它以文件夹开头,但可以有相对无限数量的子文件夹和/或文件。
{
"name":"folder1",
"uniqueID":"zzz0",
"subcontents": [ {"name":"subfolder1", "uniqueID":"zzz1"},
{"name":"subfile1", "uniqueID":"zzz2"},
{"name":"subfile2", "uniqueID":"zzz3"},
{"name":"subfolder2", "subcontents": [...etc...], "uniqueID":"zzz4"},
]
}
每个文件夹/文件文档都有一个唯一 ID,以便我可以引用它(见上面 zzz#)。我的问题是,我可以进行 mongoDB 查询以仅提取一个文档吗?
例如说db.fileSystemCollection.find({"uniqueID":"zzz4"})
,它会给我以下结果?我必须使用索引来做到这一点吗?我一直在尝试,但查询每次都返回空。
预期结果 ---> {"name":"subfolder2", "subcontents": [...etc...], "uniqueID":"zzz4"}
[编辑] 根据下面的回复,我将考虑在 mongoDB 上使用 XML 数据库。无法重新排列 json 结构以与 MongoDB 一起使用(数据过多)。