Merge branch 'hotfix/21.56.9' into master
[gitter.git] / scripts / useful-queries / incorrect-one-to-ones.js
blob360004b10e04a3dfa0548076f9a03639ff66b572
1 db.troupes.aggregate([
2   {
3     $match: {
4       oneToOne: true
5     }
6   },
7   {
8     $project: {
9       _id: 1,
10       userId1: { $arrayElemAt: ['$oneToOneUsers.userId', 0] },
11       userId2: { $arrayElemAt: ['$oneToOneUsers.userId', 1] }
12     }
13   },
14   {
15     $lookup: {
16       from: 'troupeusers',
17       localField: '_id',
18       foreignField: 'troupeId',
19       as: 'users'
20     }
21   },
22   {
23     $match: {
24       $or: [
25         {
26           users: { $size: 0 }
27         },
28         {
29           users: { $size: 1 }
30         }
31       ]
32     }
33   },
34   {
35     $project: {
36       _id: 1,
37       userId1: 1,
38       userId2: 1,
39       troupeUserId1: { $arrayElemAt: ['$users.userId', 0] }
40     }
41   }
42 ]);
44 db.troupes.aggregate([
45   {
46     $match: {
47       oneToOne: true
48     }
49   },
50   {
51     $project: {
52       _id: 1,
53       userId1: { $arrayElemAt: ['$oneToOneUsers.userId', 0] },
54       userId2: { $arrayElemAt: ['$oneToOneUsers.userId', 1] }
55     }
56   },
57   {
58     $limit: 100
59   }
60 ]);