Vui lòng làm theo các bước dưới đây để nhận được phản hồi mong muốn.
Dữ liệu:
db.devicestatus.insert([
{
"_id": "0001",
"className":"store",
"deviceStatus": [ {
"deviceName": "CardReader",
"errorCode": "97080301",
"status": "Bad"
},
{
"deviceName": "CashAcceptor",
"errorCode": "97080302,97080303",
"status": "Bad"
},
{
"deviceName": "CashDispenser",
"errorCode": "",
"status": "Good"
}]
}
])
1.Data Explorer - Đi tới Tập dữ liệu - Tập dữ liệu mới - Chọn Nguồn dữ liệu - Nhập tên tập dữ liệu - Nhấp vào Tiếp theo
2.Tên tập hợp đầu vào - devicestatus - Liệt kê tất cả các trường - Chọn tùy chọn Tổng hợp từ trình đơn thả xuống loại lệnh - Nhấp vào Biểu thức
3.Thêm biểu thức bên dưới vào lời nhắc của trình tạo biểu thức - Nhấp vào OK
Biểu thức dưới đây $unwind
để làm phẳng mảng để phân tách mảng devicestatus thành các tài liệu theo sau là $project
để giữ các trường bắt buộc.
[
{"$unwind":"$deviceStatus"},
{"$project":{
"_id":0,
"className":1,
"deviceStatus.deviceName":1,
"deviceStatus.errorCode":1
}
}
]
HOẶC
Biểu thức dưới đây lặp qua mảng devicestatus và $map
và $project
các trường bắt buộc theo sau là $unwind
để làm phẳng để phân rã mảng thành tài liệu.
[{
"$project":{
"_id":0,
"className":1,
"deviceStatus":{
"$map":{
"input":"$deviceStatus",
"as":"result",
"in":{
"deviceName":"$$result.deviceName",
"errorCode":"$$result.errorCode"
}
}
}
}
},
{"$unwind":"$deviceStatus"}
]
HOẶC
4. Xác nhận để làm mới - Nhấp vào có
5. Di chuyển tất cả các trường có sẵn vào hộp thả nhiều lựa chọn đã chọn - Nhấp vào Hoàn tất
6.Xem trước kết quả
{"className":"store", "deviceStatus":{"deviceName":"CardReader","errorCode":"97080301"}}
{"className":"store", "deviceStatus":{ "deviceName":"CashAcceptor","errorCode":"97080302,97080303"}}
{"className":"store","deviceStatus":{"deviceName":"CashDispenser","errorCode":""}}