如何设计数据库的数据结构(mongoDB)
发布于 12 年前 作者 blackgun 7634 次浏览 最后一次编辑是 8 年前

查询某个用户发表的评论,有2个方案

方案1:

articles:
{
	...
	users: ["a[@a](/user/a).com","b[@b](/user/b).com","c[@c](/user/c).com",...]
	comments: [
		{email:"a[@a](/user/a).com", comment:"..."},
		{email:"b[@b](/user/b).com", comment:"..."},
		{email:"c[@c](/user/c).com", comment:"..."},
		...
	]
}

方案2:

articles:
{
	comments: [
		{email:"a[@a](/user/a).com", comment:"..."},
		{email:"b[@b](/user/b).com", comment:"..."},
		{email:"c[@c](/user/c).com", comment:"..."},
		...
	]
}

目前采用方案1,先查询usrs,返回结果,再从结果中抽取comments数组中匹配email的内容 但感觉不是很聪明的办法,不知道类似方案2的设计怎么做? 另外也不知道若采用方案2的话应该怎么写查询语句。

1 回复

MongoDB schema 设计–博客系统设计 可以看看 http://inosql.org/topic/50cae981ee680fee79001c2c

回到顶部