Hãy xem xét ví dụ sau:
db.article.aggregate(
{ $group : {
_id : "$author",
docsPerAuthor : { $sum : 1 },
viewsPerAuthor : { $sum : "$pageViews" }
}}
);
này nhóm theo lĩnh vực tác giả và tính hai lĩnh vực.
Tôi có giá trị cho $ author = FirstName_LastName. Bây giờ thay vì nhóm theo tác giả $, tôi muốn nhóm bởi tất cả các tác giả chia sẻ cùng một LastName.
tôi đã cố gắng $ regex để nhóm bởi tất cả các chuỗi phù hợp sau khi '_'
$author.match(/_[a-zA-Z0-9]+$/)
db.article.aggregate(
{ $group : {
_id : "$author".match(/_[a-zA-Z0-9]+$/),
docsPerAuthor : { $sum : 1 },
viewsPerAuthor : { $sum : "$pageViews" }
}}
);
also tried the following:
db.article.aggregate(
{ $group : {
_id : {$author: {$regex: /_[a-zA-Z0-9]+$/}},
docsPerAuthor : { $sum : 1 },
viewsPerAuthor : { $sum : "$pageViews" }
}}
);
nhờ. tôi sẽ mang nó đến jira.mongodb.org – user1447121