MongoDB(NoSQL)-可以引用文档/链接到文档本身



我对数据库的NoSQL端很陌生,但我已经使用RDBMs多年了,主要是MySQL。

现在,在MySQL中,我有一个数据库,其中包含大约10000个食物项目(即将再添加15000个),这些项目链接到属性和营养素。就我的研究而言,这似乎是NoSQL的一个很好的用途,但有一部分让我认为它可能不是。

据我所知,NoSQL中绝对没有联接(非常简单),但现在我们有几个食物项目有些相同,它们都将引用一个,例如:

Tomatoes, Raw
Tomatoes, Canned
Tomatoes, Cooked

我要做的是让它们都引用主要对象"生番茄"或只是"番茄",但它们都包含自己的一套属性和营养素,理所当然地是自己的"食物"。

在RDBM中,这很简单,只需向item表中添加一个primary_item_id字段并引用主项。

这在MongoDB中可能吗?还是应该坚持使用MySQL?

-Kerry

您可以在MongoDB中使用相同的东西,即Tomatoes可以是id为1的主项,这些项的父id为1。集合可以记为:

{ { 1, "Tomatoes", null }, { 2, "Tomatoes, Raw", 1 }, { 3, "Tomatoes, Canned", 1 }, { 4, "Tomatoes, Cooked", 1 } }

请注意,为了查询目的,您可以将主项中的parentid保持为null(就像我在上面所做的那样),或者如果不需要它,您可以删除该列(它的工作原理是MongoDB是无模式的。)

最新更新