Làm cách nào để chọn một trường duy nhất cho tất cả các tài liệu trong bộ sưu tập MongoDB?

Trong MongoDB của tôi, tôi có một bộ sưu tập sinh viên với 10 bản ghi có tên trường và cuộn. Một kỷ lục của bộ sưu tập này là

{

"_Tôi". ObjectId("53d9feff55d6b4dd1171dd9e"),

"Tên". "tiếng Swati",

"cuộn". "80",

}

Tôi muốn truy xuất cuộn trường chỉ cho tất cả 10 bản ghi trong bộ sưu tập như chúng ta sẽ làm trong cơ sở dữ liệu truyền thống bằng cách sử dụng

CHỌN cuộn TỪ học sinh

Tôi đã xem qua nhiều blog nhưng tất cả đều dẫn đến một truy vấn phải có mệnh đề WHERE trong đó chẳng hạn

db. sinh viên. tìm ({ "cuộn". { $gt. 70 })

Truy vấn tương đương với

CHỌN * TỪ sinh viên WHERE cuộn > 70

Yêu cầu của tôi là chỉ tìm một khóa duy nhất mà không có bất kỳ điều kiện nào. Vì vậy, hoạt động truy vấn cho điều đó là gì?

Trong ví dụ trên từ những người ở Mongo, các tài liệu được trả về sẽ chỉ chứa các trường item, qty và _id

db.inventory.find( { type: 'food' }, { item: 1, qty: 0 } )

Trong ví dụ trên từ những người ở Mongo, các tài liệu được trả về sẽ chỉ chứa các trường của mục và _id


Người giới thiệu

  • https. // stackoverflow. com/questions/25589113/how-to-select-a-single-field-for-all-documents-in-a-mongodb-collection
  • https. // stackoverflow. com/questions/25589113/how-to-select-a-single-field-for-all-documents-in-a-mongodb-collection

Nhận xét hàng đầu (0)

Vương miện

Sắp xếp thảo luận

Đặt mua

Làm cách nào để chọn một trường duy nhất cho tất cả các tài liệu trong bộ sưu tập MongoDB?

Người dùng đáng tin cậy của cá nhânTạo mẫu

Mẫu cho phép bạn nhanh chóng trả lời Câu hỏi thường gặp hoặc lưu trữ đoạn mã để sử dụng lại

Gửi bản xem trước Bỏ qua

Quy tắc ứng xử Báo cáo lạm dụng

Bạn có chắc chắn muốn ẩn bình luận này?

Trong trang này, chúng ta sẽ thảo luận về cách tìm nạp dữ liệu cho các cột cụ thể hoặc ngoại trừ một cột cụ thể từ một bộ sưu tập trong MongoDB

Tên cơ sở dữ liệu của chúng tôi là 'myinfo' và tên bộ sưu tập của chúng tôi là 'userdetails'. Đây, là bộ sưu tập dưới đây

Bộ sưu tập mẫu "chi tiết người dùng"

{
        "_id" : ObjectId("528cab88e1e41035b889f2bf"),
        "user_id" : "user1",
        "password" : "1a2b3c",
        "date_of_join" : "16/10/2010",
        "education" : "M.C.A.",
        "profession" : "CONSULTANT",
        "interest" : "MUSIC",
        "community_name" : [
                "MODERN MUSIC",
                "CLASSICAL MUSIC",
                "WESTERN MUSIC"
        ],
        "community_moder_id" : [
                "MR. Alex",
                "MR. Dang",
                "MR Haris"
        ],
        "community_members" : [
                700,
                200,
                1500
        ],
        "friends_id" : [
                "kumar",
                "harry",
                "anand"
        ],
        "ban_friends_id" : [
                "Amir",
                "Raja",
                "mont"
        ]
}
{
        "_id" : ObjectId("528cabb5e1e41035b889f2c0"),
        "user_id" : "user2",
        "password" : "11aa1a",
        "date_of_join" : "17/10/2009",
        "education" : "M.B.A.",
        "profession" : "MARKETING",
        "interest" : "MUSIC",
        "community_name" : [
                "MODERN MUSIC",
                "CLASSICAL MUSIC",
                "WESTERN MUSIC"
        ],
        "community_moder_id" : [
                "MR. Roy",
                "MR. Das",
                "MR Doglus"
        ],
        "community_members" : [
                500,
                300,
                1400
        ],
        "friends_id" : [
                "pal",
                "viki",
                "john"
        ],
        "ban_friends_id" : [
                "jalan",
                "monoj",
                "evan"
        ]
}
{
        "_id" : ObjectId("528cabd0e1e41035b889f2c1"),
        "user_id" : "user3",
        "password" : "b1c1d1",
        "date_of_join" : "16/10/2010",
        "education" : "M.C.A.",
        "profession" : "IT COR.",
        "interest" : "ART",
        "community_name" : [
                "MODERN ART",
                "CLASSICAL ART",
                "WESTERN ART"
        ],
        "community_moder_id" : [
                "MR. Rifel",
                "MR. Sarma",
                "MR Bhatia"
        ],
        "community_members" : [
                5000,
                2000,
                1500
        ],
        "friends_id" : [
                "philip",
                "anant",
                "alan"
        ],
        "ban_friends_id" : [
                "Amir",
                "Raja",
                "mont"
        ]
}
{
        "_id" : ObjectId("528cabece1e41035b889f2c2"),
        "user_id" : "user4",
        "password" : "abczyx",
        "date_of_join" : "17/8/2009",
        "education" : "M.B.B.S.",
        "profession" : "DOCTOR",
        "interest" : "SPORTS",
        "community_name" : [
                "ATHELATIC",
                "GAMES FAN GYES",
                "FAVOURIT GAMES"
        ],
        "community_moder_id" : [
                "MR. Paul",
                "MR. Das",
                "MR Doglus"
        ],
        "community_members" : [
                2500,
                2200,
                3500
        ],
        "friends_id" : [
                "vinod",
                "viki",
                "john"
        ],
        "ban_friends_id" : [
                "jalan",
                "monoj",
                "evan"
        ]
}

Tài liệu mẫu được hiển thị trong dấu nhắc lệnh

Tìm nạp trường chọn lọc từ bộ sưu tập dựa trên tiêu chí

Nếu chúng tôi chỉ muốn tìm nạp "user_id" cho tất cả các tài liệu từ bộ sưu tập 'userdetails' có trình độ giáo dục "M. C. A. ", có thể sử dụng lệnh mongodb sau

>db.userdetails.find({"education":"M.C.A."},{"user_id" : 1}).pretty();

N. B. Phương thức find() hiển thị các tài liệu ở định dạng không có cấu trúc nhưng để hiển thị kết quả theo cách được định dạng, có thể sử dụng phương thức pretty()

Mã tương đương SQL là

SELECT user_id 
FROM userdetails 
WHERE education="M.C.A."; 

Đầu ra của lệnh

{ "_id" : ObjectId("528cab88e1e41035b889f2bf"), "user_id" : "user1" }
{ "_id" : ObjectId("528cabd0e1e41035b889f2c1"), "user_id" : "user3" }

Tài liệu hiển thị trong dấu nhắc lệnh

Đầu ra ở trên cho thấy rằng hai tài liệu đã được tìm nạp từ bộ sưu tập "userdetails" và tất cả các trường đã xuất hiện ngoại trừ dữ liệu của user_id, đối với những tài liệu có tiêu chuẩn "M. C. A. "

Đối tượng truy vấn nào chọn tất cả các tài liệu trong bộ sưu tập MongoDB?

A truy vấn ghép có thể chỉ định điều kiện cho nhiều trường trong tài liệu của bộ sưu tập. Ngầm định, liên kết logic AND kết nối các mệnh đề của truy vấn ghép để truy vấn chọn các tài liệu trong bộ sưu tập khớp với tất cả các điều kiện.

Làm cách nào để chỉ nhận một trường trong MongoDB bằng Java?

Truy vấn BasicDBObject = new BasicDBObject(); . tìm(truy vấn, trường);

Làm cách nào để lấy dữ liệu cụ thể từ MongoDB?

Để tìm nạp một tài liệu cụ thể từ bộ sưu tập MongoDB, chúng ta có thể sử dụng tham số truy vấn trong phương thức tìm . Tham số này sẽ giúp chúng tôi chỉ tìm nạp bản ghi đáp ứng tiêu chí.

Trường nào là bắt buộc cho tất cả các tài liệu MongoDB?

Trường _id .