Cách tìm tên cột trong MongoDB

Tên trường mới phải khác với tên trường hiện có. Để chỉ định một

db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
0 trong một tài liệu được nhúng, hãy sử dụng

Xem xét ví dụ sau

db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })

Thao tác này đổi tên trường

db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
1 thành
db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
2 và trường
db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
3 thành
db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
4

Cư xử

Bắt đầu từ MongoDB 5. 0, toán tử cập nhật xử lý các trường tài liệu có tên dựa trên chuỗi theo thứ tự từ điển. Các trường có tên số được xử lý theo thứ tự số. Xem để biết chi tiết

Toán tử thực hiện một cách hợp lý cả tên cũ và tên mới, sau đó thực hiện thao tác với tên mới. Như vậy, thao tác có thể không duy trì thứ tự của các trường trong tài liệu; . e. trường đã đổi tên có thể di chuyển trong tài liệu

Nếu tài liệu đã có trường với

db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
8, người vận hành sẽ xóa trường đó và đổi tên
db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
0 đã chỉ định thành
db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
8

Nếu trường để đổi tên không tồn tại trong tài liệu, thì không có gì (i. e. không hoạt động)

Đối với các trường trong tài liệu nhúng, người vận hành có thể đổi tên các trường này cũng như di chuyển các trường vào và ra khỏi tài liệu nhúng. không hoạt động nếu các trường này nằm trong phần tử mảng

Bắt đầu từ MongoDB 5. 0, không còn phát sinh lỗi khi bạn sử dụng toán tử cập nhật như với biểu thức toán hạng trống (

db.students.insertMany( [   {     "_id": 1,     "alias": [ "The American Cincinnatus", "The American Fabius" ],     "mobile": "555-555-5555",     "nmae": { "first" : "george", "last" : "washington" }   },   {     "_id": 2,     "alias": [ "My dearest friend" ],     "mobile": "222-222-2222",     "nmae": { "first" : "abigail", "last" : "adams" }   },   {     "_id": 3,     "alias": [ "Amazing grace" ],     "mobile": "111-111-1111",     "nmae": { "first" : "grace", "last" : "hopper" }   }] )
7 ). Bản cập nhật trống dẫn đến không có thay đổi nào và không có mục nào được tạo (có nghĩa là thao tác này không hoạt động)

ví dụ

Tạo bộ sưu tập

db.students.insertMany( [   {     "_id": 1,     "alias": [ "The American Cincinnatus", "The American Fabius" ],     "mobile": "555-555-5555",     "nmae": { "first" : "george", "last" : "washington" }   },   {     "_id": 2,     "alias": [ "My dearest friend" ],     "mobile": "222-222-2222",     "nmae": { "first" : "abigail", "last" : "adams" }   },   {     "_id": 3,     "alias": [ "Amazing grace" ],     "mobile": "111-111-1111",     "nmae": { "first" : "grace", "last" : "hopper" }   }] )
8

db.students.insertMany( [   {     "_id": 1,     "alias": [ "The American Cincinnatus", "The American Fabius" ],     "mobile": "555-555-5555",     "nmae": { "first" : "george", "last" : "washington" }   },   {     "_id": 2,     "alias": [ "My dearest friend" ],     "mobile": "222-222-2222",     "nmae": { "first" : "abigail", "last" : "adams" }   },   {     "_id": 3,     "alias": [ "Amazing grace" ],     "mobile": "111-111-1111",     "nmae": { "first" : "grace", "last" : "hopper" }   }] )

Tài liệu có lỗi,

db.students.insertMany( [   {     "_id": 1,     "alias": [ "The American Cincinnatus", "The American Fabius" ],     "mobile": "555-555-5555",     "nmae": { "first" : "george", "last" : "washington" }   },   {     "_id": 2,     "alias": [ "My dearest friend" ],     "mobile": "222-222-2222",     "nmae": { "first" : "abigail", "last" : "adams" }   },   {     "_id": 3,     "alias": [ "Amazing grace" ],     "mobile": "111-111-1111",     "nmae": { "first" : "grace", "last" : "hopper" }   }] )
9 phải là
db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
30. Các ví dụ trong các phần sau cập nhật các tài liệu trong bộ sưu tập

Đổi tên một trường

Để đổi tên một trường, hãy gọi toán tử với tên hiện tại của trường và tên mới

db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
3

Thao tác này đổi tên trường

db.students.insertMany( [   {     "_id": 1,     "alias": [ "The American Cincinnatus", "The American Fabius" ],     "mobile": "555-555-5555",     "nmae": { "first" : "george", "last" : "washington" }   },   {     "_id": 2,     "alias": [ "My dearest friend" ],     "mobile": "222-222-2222",     "nmae": { "first" : "abigail", "last" : "adams" }   },   {     "_id": 3,     "alias": [ "Amazing grace" ],     "mobile": "111-111-1111",     "nmae": { "first" : "grace", "last" : "hopper" }   }] )
9 thành
db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
30 cho tất cả các tài liệu trong bộ sưu tập

db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
7

Đổi tên trường trong tài liệu nhúng

Để đổi tên một trường trong tài liệu được nhúng, hãy gọi toán tử sử dụng tham chiếu đến trường. Nếu trường vẫn còn trong cùng một tài liệu được nhúng, cũng sử dụng ký hiệu dấu chấm trong tên mới, như sau

db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
8

Thao tác này đổi tên trường nhúng

db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
35 thành
db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
36

db.students.updateOne(   { _id: 1 },   { $rename: { 'nickname': 'alias', 'cell': 'mobile' } })
1

Đổi tên một trường không tồn tại

Khi đổi tên một trường và tên trường hiện có đề cập đến một trường không tồn tại, toán tử không thực hiện gì, như sau

Cột được gọi trong MongoDB là gì?

Trong MongoDB, dữ liệu được lưu trữ trong tài liệu. Cột. Cánh đồng. Trong RDBMS, cột biểu thị một tập hợp các giá trị dữ liệu . Những thứ này trong MongoDB được gọi là Trường.

Làm cách nào để lấy giá trị trường trong MongoDB?

Trả về giá trị của trường được chỉ định từ tài liệu. Nếu bạn không chỉ định một đối tượng, $getField trả về giá trị của trường từ $$CURRENT. Bạn có thể sử dụng $getField để truy xuất giá trị của các trường có tên chứa dấu chấm (. ) hoặc bắt đầu bằng ký hiệu đô la ($ ).

Làm cách nào để tìm dữ liệu trong MongoDB?

Trong MongoDB, phương thức find() được sử dụng để chọn tài liệu trong bộ sưu tập và trả lại con trỏ cho tài liệu đã chọn . Con trỏ nghĩa là một con trỏ trỏ đến một tài liệu, khi chúng ta sử dụng phương thức find() nó sẽ trả về một con trỏ trên các tài liệu đã chọn và trả về từng cái một.

Làm cách nào để tìm id trong MongoDB?

MongoDB cung cấp một hàm có tên findById() được sử dụng để truy xuất tài liệu khớp với 'id' do người dùng chỉ định. Để sử dụng findById trong MongoDB, hàm find() được sử dụng. Nếu không tìm thấy tài liệu nào khớp với 'id' đã chỉ định, nó sẽ trả về giá trị rỗng.