如何在MongoDB中以大写形式获取输出字段。
考虑下面的数据集,我们希望以特殊字段的大写形式返回输出(假设提交'type')
数据:
如果我们运行查询它返回错误,如下所示无法解析,请建议一个解决方案,以大写字母获取字段'type'输出。 db.products.find([{$ TOUPPER:”类型”},{类型:”墙”}])
答案 0 :(得分:1)
您需要使用聚合并将toUpper给出的值作为新字段进行投影。请参阅$toUpper documentation page:
中的示例db.inventory.aggregate(
[
{
$project:
{
item: { $toUpper: "$item" },
description: { $toUpper: "$description" }
}
}
]
)
注意$ toUpper的结果如何用作新字段项的值。
尝试使用您的数据。我创建了一个测试集合,它对我有用。
db.products.aggregate(
{
$match: {
"type": "wall"
}
},
{
$project: {
"upperCaseType": {
$toUpper: "$type"
}
}
}
);
匹配验证type
是否为“墙”,投影表示仅包含大写type
字段的值。可能有一种方法可以在没有聚合的情况下做到这一点,但我不知道它。
答案 1 :(得分:0)
db.products.find({ "name": { $regex: "abc" } });
我们可以使用$ regex运算符来查找大写或小写的文本。