mongo_query_memo - y-matsuki/twitter-stream-mongo GitHub Wiki

// Tweetを日付の降順に並べる
db.getCollection('tweet').find(
  {},
  {'user.screen_name':1,text:1,created_at:1,_id:0}
).sort({ timestamp_ms: -1 });

// Tweet内容に'渋谷'を含むTweetを日付の降順に並べる
db.getCollection('tweet').find(
  {'text':/渋谷/},
  {'user.screen_name':1,text:1,created_at:1,_id:0}
).sort({ timestamp_ms: -1 });

// place毎にTweet数をカウントし降順に並べる
db.getCollection('tweet').aggregate([
  { $group: { _id: '$place.full_name', count: { $sum: 1 } }},
  { $sort: { count: -1 } }
]);

// screen_name毎にTweet数をカウントし降順に並べる
db.getCollection('tweet').aggregate([
  { $group: { _id: '$user.screen_name', count: { $sum: 1 } }},
  { $sort: { count: -1 } }
]);