对MongoTemplate的Mongo字符串查询(java,springframework)

时间:2017-06-20 14:11:29

标签: java mongodb spring-framework-beans

我有查询

db.getCollection('collectionName').aggregate([
{
    $project: {
        '_id':1,
        'arrayField': {
            $filter: {
                input: '$arrayField',
                as: 'arrayField',
                cond: { $or: [ 
                    {$eq: [ [LUUID("********-****-****-****-************")],['$$arrayField._id'] ] },
                    {$eq: [ [LUUID("********-****-****-****-************")],['$$arrayField._id'] ] }
                  ] }
            }
        }
    }
}])

MongoTemplate的外观如何?并且可以重写 cond

1 个答案:

答案 0 :(得分:0)

cond 改写为:

 db.getCollection('collectionName').aggregate([
    {
        $project: {
            '_id':1,
            'arrayField': {
                $filter: {
                    input: '$arrayField',
                    as: 'arrayField',
                    cond: 
                        { "$setIsSubset": [
                            { "$map": {
                                "input": ["$$arrayField._id"],
                                "as": "el",
                                "in": "$$el"
                            }},
                            [ LUUID("********-****-****-****-************") ,LUUID("********-****-****-****-************")],
                        ]}
                }
            }
        }
    }])