Sử dụng $set cùng update(). Tạo collection với trường NumberLong:
> db.findAndReplaceDemo.insertOne({"UserId": NumberLong(101)});
{ "acknowledged": true, "insertedId": ObjectId("5cd2c960b64f4b851c3a13b6") }
> db.findAndReplaceDemo.insertOne({"UserId": NumberLong(110)});
{ "acknowledged": true, "insertedId": ObjectId("5cd2c966b64f4b851c3a13b7") }
> db.findAndReplaceDemo.insertOne({"UserId": NumberLong(101)});
{ "acknowledged": true, "insertedId": ObjectId("5cd2c969b64f4b851c3a13b8") }
> db.findAndReplaceDemo.insertOne({"UserId": NumberLong(120)});
{ "acknowledged": true, "insertedId": ObjectId("5cd2c96cb64f4b851c3a13b9") }
> db.findAndReplaceDemo.insertOne({"UserId": NumberLong(130)});
{ "acknowledged": true, "insertedId": ObjectId("5cd2c96eb64f4b851c3a13ba") }
Hiển thị tất cả
> db.findAndReplaceDemo.find().pretty();
Tìm UserId = 101 và thay bằng 10001
> db.findAndReplaceDemo.update(
{"UserId": NumberLong(101)},
{$set: {"UserId": NumberLong(10001)}},
false, true
);
WriteResult({ "nMatched": 2, "nUpserted": 0, "nModified": 2 })
Kết quả
> db.findAndReplaceDemo.find().pretty();
Kết quả (hai tài liệu UserId=101 đã thành 10001):
{
"_id": ObjectId("5cd2c960b64f4b851c3a13b6"), "UserId": NumberLong(10001)
}
{
"_id": ObjectId("5cd2c966b64f4b851c3a13b7"), "UserId": NumberLong(110)
}
{
"_id": ObjectId("5cd2c969b64f4b851c3a13b8"), "UserId": NumberLong(10001)
}
{
"_id": ObjectId("5cd2c96cb64f4b851c3a13b9"), "UserId": NumberLong(120)
}
{
"_id": ObjectId("5cd2c96eb64f4b851c3a13ba"), "UserId": NumberLong(130)
}
Lưu ý: NumberLong là kiểu 64-bit integer trong MongoDB shell. Cần dùng NumberLong() cả khi truy vấn và khi gán giá trị mới.