【发布时间】:2021-03-05 19:34:10
【问题描述】:
我想使用忽略大小写的投影执行 MongoDB 管道查询。
我有示例测试数据库、集合和文档/记录:
use test;
db.createCollection('movie');
db.movie.insert({"name" : "A", "actors": ['Actor1', 'Actor2'], 'ReleaseYear':2021});
db.movie.insert({"name" : "B", "actors": ['Actor3', 'Actor4'], 'releaseYear':2022});
db.movie.insert({"name" : "C", "actors": ['Actor5', 'Actor6'], 'releaseyear':2023});
在上面,文档的属性为ReleaseYear,但大小写不同。
使用下面的查询,我们只得到“A”电影文档:
db.movie.aggregate([{"$project":{"Lead Role" : { $arrayElemAt: [ "$actors", 0 ] }, "Release Year":"$ReleaseYear"}}]).pretty();
使用这个我们只得到'B'电影文档:
db.movie.aggregate([{"$project":{"Lead Role" : { $arrayElemAt: [ "$actors", 0 ] }, "Release Year":"$releaseYear"}}]).pretty();
如何获取忽略“ReleaseYear”属性大小写的所有相关记录?
【问题讨论】:
标签: mongodb mongodb-query aggregation-framework