mirror of
https://github.com/openimsdk/open-im-server.git
synced 2025-11-05 21:02:11 +08:00
60 lines
1.2 KiB
JavaScript
60 lines
1.2 KiB
JavaScript
|
|
db.friend_version.aggregate([
|
|
{
|
|
"$match": {
|
|
"d_id": "100",
|
|
}
|
|
},
|
|
{
|
|
"$project": {
|
|
"_id": 0,
|
|
"d_id": 0,
|
|
}
|
|
},
|
|
{
|
|
"$addFields": {
|
|
"logs": {
|
|
$cond: {
|
|
if: {
|
|
$or: [
|
|
{$lt: ["$version", 3]},
|
|
{$gte: ["$deleted", 3]},
|
|
],
|
|
},
|
|
then: [],
|
|
else: "$logs",
|
|
}
|
|
}
|
|
},
|
|
},
|
|
{
|
|
"$addFields": {
|
|
"logs": {
|
|
"$filter": {
|
|
input: "$logs",
|
|
as: "l",
|
|
cond: { $gt: ["$$l.version", 3] }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"$addFields": {
|
|
"log_len": {
|
|
$size: "$logs"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"$addFields": {
|
|
"logs": {
|
|
$cond: {
|
|
if: {$gt: ["$log_len", 1]},
|
|
then: [],
|
|
else: "$logs",
|
|
}
|
|
}
|
|
}
|
|
}
|
|
])
|