2011-12-06 23 views
6

私はSQLを持っている:pymongoで個数countを使うには?

select field2, count(distinct field1) from table group by field2; 

pymongoにこのSQLを達成するためにどのように?あなたが持っているので

db.users.group({key: {age: true}, 
initial: {count: 0}, 
reduce: function (obj, prev) { prev.count++;} }) 

+0

まず、MongoDBのドキュメントを読んでください。あなたは盲目的にSQL文をMongoDB照会に変換することも、SOがあなたのためにそれを行うことを期待するべきでもありません。 –

答えて

2

私はあなたに似たもののように見えることになる。この場合SQL to Mongo Mapping Chart

をモンゴするSQLからの変換を行う上で作業するときに非常に有用であることを、このリソースを見つけましたもう少し複雑なロジックをここではreduce関数を使う必要があります。正直なところ、ここで何が起こっているのかを完全に理解するには、もう少し詳しくお読みください。 Map Reduce

4

.group()機能を使用すると、pymongoドライバでこれらの種類のクエリを実行できます。

db.table.group(["field1"], {}, {"count":0},"function(o, p){p.count++}")

この意志一緒にグループ「FIELD1」の異なる値とそれぞれの出現回数を追跡するカウンタをインクリメントします。

関連する問題