MongoDB如何实现distinct

xiaocao000 发布于 2013/12/02 08:48
阅读 6K+
收藏 1

rt

怎么在mongodb中实现类似于SQL中distinct的功能,查询某一个字段所有的值

加载中
1
huzorro
huzorro

想实现复杂一点的distinct 还是用mapreduce吧

http://my.oschina.net/huzorro/blog/73879

xiaocao000
xiaocao000
这个很有帮助, 感谢哈
1
typeorigin
typeorigin

db.<collection_name>.distinct('<field_name>')

<> 中添上对应的名称即可

typeorigin
typeorigin
比如有collection 叫 people, 里面有字段 age, 那么就是 db.people.distinct('age')
0
xiaocao000
xiaocao000

引用来自“在云端-看世间变幻”的答案

db.<collection_name>.distinct('<field_name>')

<> 中添上对应的名称即可

原来是这样子, 这样可以实现distinct了, 但是貌似没有办法加类似于SQL的那种where条件?

db.IM_AGGREGATION_MONTH.find("nodeCode":"52072210202501").distinct("factorCode");

会提示

Mon Dec  2 09:24:12.148 JavaScript execution failed: TypeError: Object DBQuery: mps.IM_AGGREGATION_MONTH -> { "nodeCode" : "52072210202501" } has no method 'distinct'

我的意图是, 只查询指定节点编码的因子

typeorigin
typeorigin
对的,这个 dinstinct() 是属于collection的,但是 find() 返回的 cursor 对象没有这个方法,这个比较囧。貌似你只能自己处理了,呵呵。
0
小路子
小路子
用mapreduce吧。
返回顶部
顶部