Có chế độ xem trong MongoDB không?
Tạo chế độ xem là kết quả của việc áp dụng đã chỉ định cho bộ sưu tập hoặc chế độ xem nguồn. Lượt xem đóng vai trò là bộ sưu tập chỉ đọc và được tính toán theo yêu cầu trong quá trình đọc. MongoDB thực thi các thao tác đọc trên các khung nhìn như một phần của quy trình tổng hợp cơ bản Show db db. createView có cú pháp như sau. db.createView(<view>, <source>, <pipeline>, <options>) Phương thức chấp nhận các tham số sau ParameterTypeDescription view stringTên của view cần tạo. nguồn stringTên của bộ sưu tập nguồn hoặc chế độ xem để tạo chế độ xem từ đó. Tên không phải là không gian tên đầy đủ của bộ sưu tập hoặc chế độ xem; . e. không bao gồm tên cơ sở dữ liệu và ngụ ý cơ sở dữ liệu giống như dạng xem để tạo. đường dẫnmảngMột mảng bao gồm. db. createView tạo chế độ xem bằng cách áp dụng đường dẫn đã chỉ định cho nguồn . . . . . . . . . . . . collection or view. Định nghĩa chế độ xem là công khai; . e. và giải thích các thao tác trên chế độ xem sẽ bao gồm đường dẫn xác định chế độ xem. Như vậy, tránh đề cập trực tiếp đến các trường và giá trị nhạy cảm trong định nghĩa dạng xem. tùy chọntài liệuTùy chọn. Tùy chọn bổ sung cho phương phápTài liệu tùy chọn chứa trường tùy chọn sau FieldTypeDescription đối chiếutài liệuKhông bắt buộc. Chỉ định cho chế độ xem So sánh chuỗi trên dạng xem sử dụng đối chiếu mặc định của dạng xem. Một thao tác cố gắng thay đổi hoặc ghi đè đối chiếu mặc định của chế độ xem sẽ không thành công với lỗi Đối chiếu cho phép người dùng chỉ định các quy tắc dành riêng cho ngôn ngữ để so sánh chuỗi, chẳng hạn như quy tắc cho chữ cái và dấu trọng âm Nếu nguồn cơ bản là một bộ sưu tập, chế độ xem không kế thừa cài đặt đối chiếu của bộ sưu tập. Nếu nguồn cơ bản là một chế độ xem khác, thì chế độ xem đó phải chỉ định cùng một cài đặt đối chiếu. Tùy chọn đối chiếu có cú pháp sau collation: { locale: <string>, caseLevel: <boolean>, caseFirst: <string>, strength: <int>, numericOrdering: <boolean>, alternate: <string>, maxVariable: <string>, backwards: <boolean> } Khi chỉ định đối chiếu, trường ngôn ngữ là bắt buộc; . Để biết mô tả về các trường, xem. 3. 4 新版功能 db db. phương thức createView() kết thúc thao tác lệnh sau. db.runCommand( { create: <view>, viewOn: <source>, pipeline: <pipeline>, collation: <collation> } ) Các hoạt động liệt kê các bộ sưu tập, chẳng hạn như và , bao gồm các dạng xem trong kết quả đầu ra của chúng 重要 Định nghĩa chế độ xem là công khai; . e. và giải thích các thao tác trên chế độ xem sẽ bao gồm đường dẫn xác định chế độ xem. Như vậy, tránh đề cập trực tiếp đến các trường và giá trị nhạy cảm trong định nghĩa dạng xem. Để xóa chế độ xem, hãy sử dụng phương thức trên chế độ xem Cư xửLượt xem thể hiện hành vi sau
ví dụTạo Chế độ xem từ một Bộ sưu tập đơnCho một bộ sưu tập khảo sát với các tài liệu sau. { _id: 1, empNumber: "abc123", feedback: { management: 3, environment: 3 }, department: "A" } { _id: 2, empNumber: "xyz987", feedback: { management: 2, environment: 3 }, department: "B" } { _id: 3, empNumber: "ijk555", feedback: { management: 3, environment: 4 }, department: "A" } Thao tác sau đây tạo chế độ xem managerRatings với _id, feedback.management và bộ phận . db.createView( "managementFeedback", "survey", [ { $project: { "management": "$feedback.management", department: 1 } } ] ) Truy vấn một ViewĐể truy vấn chế độ xem, bạn có thể sử dụng trên chế độ xem db.managementFeedback.find() Hoạt động trả về các tài liệu sau { "_id" : 1, "department" : "A", "management" : 3 } { "_id" : 2, "department" : "B", "management" : 2 } { "_id" : 3, "department" : "A", "management" : 3 } Thực hiện Aggregation Pipeline trên ViewThao tác sau đây thực hiện tổng hợp trên chế độ xem phản hồi quản lý , sử dụng $sortByCount to group by the department field and sort in descending order by the count of each distinct department: db.managementFeedback.aggregate([ { $sortByCount: "$department" } ] ) Hoạt động trả về các tài liệu sau ________số 8_______ Tạo Chế độ xem từ nhiều Bộ sưu tậpCho hai tập hợp sau
db sau db. ví dụ createView() chỉ định một giai đoạn để tạo chế độ xem từ sự kết hợp của hai bộ sưu tập. collation: { locale: <string>, caseLevel: <boolean>, caseFirst: <string>, strength: <int>, numericOrdering: <boolean>, alternate: <string>, maxVariable: <string>, backwards: <boolean> }1 Truy vấn một ViewĐể truy vấn chế độ xem, bạn có thể sử dụng trên chế độ xem collation: { locale: <string>, caseLevel: <boolean>, caseFirst: <string>, strength: <int>, numericOrdering: <boolean>, alternate: <string>, maxVariable: <string>, backwards: <boolean> }2 Hoạt động trả về các tài liệu sau collation: { locale: <string>, caseLevel: <boolean>, caseFirst: <string>, strength: <int>, numericOrdering: <boolean>, alternate: <string>, maxVariable: <string>, backwards: <boolean> }3 Thực hiện Aggregation Pipeline trên ViewThao tác sau đây thực hiện tổng hợp trên chế độ xem orderDetails , sử dụng $sortByCount to group by the item field and sort in descending order by the count of each distinct item: collation: { locale: <string>, caseLevel: <boolean>, caseFirst: <string>, strength: <int>, numericOrdering: <boolean>, alternate: <string>, maxVariable: <string>, backwards: <boolean> }4 Hoạt động trả về các tài liệu sau collation: { locale: <string>, caseLevel: <boolean>, caseFirst: <string>, strength: <int>, numericOrdering: <boolean>, alternate: <string>, maxVariable: <string>, backwards: <boolean> }5 Tạo Chế độ xem với Đối chiếu Mặc địnhCho bộ sưu tập địa điểm với tài liệu sau. collation: { locale: <string>, caseLevel: <boolean>, caseFirst: <string>, strength: <int>, numericOrdering: <boolean>, alternate: <string>, maxVariable: <string>, backwards: <boolean> }6 Thao tác sau đây tạo chế độ xem, chỉ định ở cấp độ chế độ xem collation: { locale: <string>, caseLevel: <boolean>, caseFirst: <string>, strength: <int>, numericOrdering: <boolean>, alternate: <string>, maxVariable: <string>, backwards: <boolean> }7 So sánh chuỗi trên dạng xem sử dụng đối chiếu mặc định của dạng xem. Ví dụ: thao tác sau sử dụng đối chiếu của chế độ xem collation: { locale: <string>, caseLevel: <boolean>, caseFirst: <string>, strength: <int>, numericOrdering: <boolean>, alternate: <string>, maxVariable: <string>, backwards: <boolean> }8 Thao tác trả về 3 . Một thao tác cố gắng thay đổi hoặc ghi đè đối chiếu mặc định của chế độ xem sẽ không thành công với lỗi ← db. createCollection() db. currentOp() → © MongoDB, Inc 2008-2017. MongoDB, Mongo và logo chiếc lá là các nhãn hiệu đã đăng ký của MongoDB, Inc Làm cách nào để xem dữ liệu được lưu trữ trong MongoDB?Cơ sở dữ liệu→ Tìm kiếm→ Hồ dữ liệu (Xem trước)→ Biểu đồ→ Đồng bộ hóa thiết bị→ API, Trình kích hoạt, Chức năng→ NoSQL có chế độ xem không?Các bản ghi trong cơ sở dữ liệu SQL được truy xuất bằng các truy vấn, trong khi kho lưu trữ tài liệu NoSQL sử dụng các dạng xem . Người ta có thể nghĩ về một chế độ xem đại khái như một bộ lọc xác định tài liệu nào trong một vùng chứa mà khách hàng sẽ thấy. |