我应该如何与MongoDB中的国家和城市合作

时间:2013-06-19 15:47:10

标签: mongodb

我需要存储一些广告,每个广告都有城市和城镇,如下所示:

ad
 |- title
 |- desc
 |- country
 |- city
...

我可以按城市和/或城镇查找广告。那么我应该如何将它们存储在数据库中?在MySQL中,我使用了id,但我不知道如何在MongoDB中创建它?

编辑:我需要执行以下查询: 给我一些城镇的所有广告。 2.给我一些国家的所有广告 3.按城市和国家/地区向我提供所有广告

1 个答案:

答案 0 :(得分:0)

取决于您打算如何查询广告,保留它可能没问题。使用当前的模式,您可以执行类似的查询(nodejs示例):

orm.Ad.find({city:"New York"}).exec(function(error, ads) {   });

这将返回包含“纽约”作为城市的所有广告。我没有看到你所说的为已知城市和国家分别收集的任何理由。

编辑:在mongo中存储数据时,会为该项目创建唯一的ID。你不必这样做。

如果您要查询城市和国家/地区的所有广告,可以修改您的查询:

 orm.Ad.find({$and: city:"New York", country:"united states"}).exec(function(error, ads) {   });