是否有像mongo中的子集合这样的概念,类似于子文档但支持完整的crud api?我想组织我的数据库来执行这样的查询:
db.games.pong.leaderbords.find({score:{'$gt':99}})
换句话说,是集合的任何层次结构,还是我必须为每个集合创建一个完全描述性的名称,如:
db.pongLeaderboard.find({score:{'$gt':99}});
编辑:正如Nicolas所指出的那样,点符号是允许的。我想要问的是,我可以这样做并让games
和pong
成为适当的收藏品,所以我仍然可以做类似的事情
db.games.find({name:'pacman'})
答案 0 :(得分:1)
集合名称包含.
字符是完全合法的,因此完全可以组织您的数据,使您的第一个查询正确。
我很确定创建集合games.pong.leaderbords
不会创建games
,games.pong
或pong
,所以这可能无法解决您的问题。
这类问题非常容易为您自己解答 - 只需在MongoDB中输入您的查询,看看会发生什么。如果它失败了,那是不可能的。如果没有,那就有可能。 MongoDB很好。这不仅可以为您提供明确的答案,还可以为您提供立即答案,而无需等待某人尝试输入您的查询并发布结果。
答案 1 :(得分:0)
我的意思是我能做到这一点并且让游戏和乒乓球成为适当的收藏品,所以我仍然可以做类似的事情
如果我理解你,那么没有。这两个“子集合”将不会相互引用,除非您实际创建了一个games
集合,其中包含数据(db.games.ping.xx
不计算),那么这将不起作用。