tài liệu của tôi trông như thế này:Làm cách nào để thực hiện COUNT trong MongoDB?
{
"_id": ObjectId("5698fcb5585b2de0120eba31"),
"id": "26125242313",
"parent_id": "26125241841",
"link_id": "10024080",
"name": "26125242313",
"author": "gigaquack",
"body": "blogging = creative writing",
"subreddit_id": "6",
"subreddit": "reddit.com",
"score": "27",
"created_utc": "2007-10-22 18:39:31"
}
Những gì tôi đang cố gắng làm là tạo ra một truy vấn mà tìm thấy những người dùng đưa lên chỉ có 1 subreddit. Tôi đã làm điều này trong SQL bằng cách sử dụng truy vấn:
Select distinct author, subreddit from reddit group by author having count(*) = 1;
Tôi đang cố gắng làm điều gì đó tương tự trong MongoDB nhưng đang gặp một số vấn đề. Tôi đã quản lý để tạo lại lựa chọn riêng biệt bằng cách sử dụng nhóm tổng hợp nhưng tôi không thể tìm ra cách để giải quyết phần COUNT HAVING.
Đây là những gì truy vấn của tôi trông giống như:
db.collection.aggregate(
[{"$group":
{ "_id": { author: "$author", subreddit: "$subreddit" } } },
{$match:{count:1}} // This part is not working
])
Tôi sử dụng $ trận đấu sai?
trả về tất cả thông tin, nhưng tôi chỉ muốn tên tác giả. Làm thế nào tôi có thể làm điều đó? – user4742549