2012-12-26 23 views
3

我的应用程序是一个韩文 - 英文字典,我使用MongoDb在node.js上撰写。问题在于组织数据库,所以我可以用相同的词汇来表达韩英文和韩文方向。在MySQL中,我将使用包含单词引用的所有单词表和多对多连接表。
例如,我有
A是C
A是d
B是C
翻译对于A是C,d - 一个方向
翻译为C是A,B - 另一个方向
我如何在Mongo中组织数据库?Mongo双向字典

回答

1

如果我理解你的权利。

假设你有这个集合。

db.collection({'en': 'word_en', 'kr':'word_kr'}) 

,如果你要搜索en eqvivalent '韩国' 字只写:

db.collection.find({'kr': 'word'}) 

,反之亦然

db.collection.find({'en': 'word'}) 

不要忘了收集创建索引。

此外,请确保您的索引不是唯一的,因此您可以添加多个引用。所以,在你的榜样的扩展,你会得到这样的事情:

db.collection({'en': 'A', 'kr':'C'}) 
db.collection({'en': 'A', 'kr':'D'}) 
db.collection({'en': 'B', 'kr':'C'}) 

当你要翻译A

db.collection.find({'en': 'A'}) 

你得到C和D.从C移动类似的数组

+0

我想这就是我想要的,谢谢 – staskjs