MongoDb更新所有记录的前导零
我有一个包含用户的MongoDB集合。 每个用户都有一个电话号码(保存为字符串) 有些电话号码以0开头,有些则不以0开头 我需要所有电话号码都以零开头 更新集合中的所有记录并仅在不以0开头的电话号码中添加前导零的最佳方法是什么 谢谢MongoDb更新所有记录的前导零,mongodb,mongodb-query,Mongodb,Mongodb Query,我有一个包含用户的MongoDB集合。 每个用户都有一个电话号码(保存为字符串) 有些电话号码以0开头,有些则不以0开头 我需要所有电话号码都以零开头 更新集合中的所有记录并仅在不以0开头的电话号码中添加前导零的最佳方法是什么 谢谢 过滤不以0开头的电话 添加0 过滤不以0开头的电话 添加0 您可以转换为字符串并检查起始数字,或者使用正则表达式^0如何在查询中执行此操作?您可以转换为字符串并检查起始数字,或者使用正则表达式^0如何在查询中执行此操作? db.coll.update( {
- 过滤不以0开头的电话
- 添加0
- 过滤不以0开头的电话
- 添加0
db.coll.update(
{ phone:{ $not:/^0/ } },
[
{
"$addFields" : {
"phone" : {
"$concat" : [
"0",
"$phone"
]
}
}
}
])