Làm cách nào để tìm dữ liệu trong MongoDB?
Trong mongoDB, phương thức find() được sử dụng để tìm nạp một dữ liệu cụ thể từ bảng. Nói cách khác, nó được sử dụng để chọn dữ liệu trong một bảng. Nó cũng được sử dụng để trả lại tất cả các sự kiện cho dữ liệu đã chọn. Phương thức find() bao gồm hai tham số mà chúng ta có thể tìm thấy một bản ghi cụ thể Show
cú pháp
ví dụTrong các ví dụ sau, chúng tôi đang làm việc với { "_id" : ObjectId("56254d4fdf2222265r4g12ds3d65f"), "name" : "Mick", "Course" : "btech", "batch_year" : 2018, "language" : ["c++", "java", "python"], } { "_id" : ObjectId("56254d4fdf2222265r4g12ds3d691"), "name" : "Zoya", "Course" : "BCA", "batch_year" : 2020, "language" : ["C#", "JavaScript"], } { "_id" : ObjectId("56254d4fdf2222265r4g12ds3d655"), "name" : "Jonny", "Course" : "MCA", "batch_year" : 2019, "language" : ["C#", "java", "PHP"], } { "_id" : ObjectId("56254d4fdf2222265r4g12ds3d678"), "name" : "Oliver", "Course" : "BA", "batch_year" : 2017, "language" : ["c", "PHP"], } { "_id" : ObjectId("56254d4fdf2222265r4g12ds3d665"), "name" : "Mia", "Course" : "btech", "batch_year" : 2020, "language" : ["HTML", "CSS", "PHP"], } ví dụ 1. Tìm tất cả các tài liệu trong bộ sưu tập của sinh viênKhi chúng tôi cần tất cả các bản ghi, chúng tôi không sử dụng bất kỳ tham số nào trong truy vấn đầu ra ví dụ 2. Tìm tài liệu cụ thểTrong ví dụ này, chúng tôi chỉ truy xuất tài liệu của những sinh viên có batch_year lớn hơn 2018 Tham số đầu tiên của phương thức Không có tham số nào trong phương thức find() cho bạn kết quả giống như SELECT * trong MySQL Thí dụTrả lại tất cả tài liệu trong bộ sưu tập "khách hàng" và in từng tài liệu pymongo nhập khẩu myclient = pymongo. MongoClient("mongodb. //máy chủ cục bộ. 27017/") cho x trong mycol. tìm thấy() Chỉ trả về một số trườngTham số thứ hai của phương thức Tham số này là tùy chọn và nếu bỏ qua, tất cả các trường sẽ được đưa vào kết quả Thí dụChỉ trả lại tên và địa chỉ, không phải _ids pymongo nhập khẩu myclient = pymongo. MongoClient("mongodb. //máy chủ cục bộ. 27017/") cho x trong mycol. tìm ID". 0, "tên". 1, "địa chỉ". 1 }) Bạn không được phép chỉ định cả hai giá trị 0 và 1 trong cùng một đối tượng (trừ khi một trong các trường là trường _id). Nếu bạn chỉ định một trường có giá trị 0, tất cả các trường khác sẽ nhận giá trị 1 và ngược lại Thí dụVí dụ này sẽ loại trừ "địa chỉ" khỏi kết quả pymongo nhập khẩu myclient = pymongo. MongoClient("mongodb. //máy chủ cục bộ. 27017/") cho x trong mycol. tìm địa chỉ". 0 }) Thí dụBạn gặp lỗi nếu chỉ định cả hai giá trị 0 và 1 trong cùng một đối tượng (ngoại trừ nếu một trong các trường là trường _id) Ví dụ sau truy xuất tất cả các tài liệu từ bộ sưu tập có tên mycol và sắp xếp chúng theo định dạng dễ đọc > db.mycol.find().pretty() { "_id" : ObjectId("5dd4e2cc0821d3b44607534c"), "title" : "MongoDB Overview", "description" : "MongoDB is no SQL database", "by" : "tutorials point", "url" : "http://www.tutorialspoint.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 } { "_id" : ObjectId("5dd4e2cc0821d3b44607534d"), "title" : "NoSQL Database", "description" : "NoSQL database doesn't have tables", "by" : "tutorials point", "url" : "http://www.tutorialspoint.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 20, "comments" : [ { "user" : "user1", "message" : "My first comment", "dateCreated" : ISODate("2013-12-09T21:05:00Z"), "like" : 0 } ] } Phương thức findOne()Ngoài phương thức find(), còn có phương thức findOne() chỉ trả về một tài liệu cú pháp>db.COLLECTIONNAME.findOne() Thí dụVí dụ sau truy xuất tài liệu có tiêu đề Tổng quan về MongoDB > db.mycol.findOne({title: "MongoDB Overview"}) { "_id" : ObjectId("5dd6542170fb13eec3963bf0"), "title" : "MongoDB Overview", "description" : "MongoDB is no SQL database", "by" : "tutorials point", "url" : "http://www.tutorialspoint.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 } RDBMS Where Mệnh đề tương đương trong MongoDBĐể truy vấn tài liệu trên cơ sở một số điều kiện, bạn có thể sử dụng các thao tác sau OperationSyntaxExampleRDBMS EquivalentEquality{:{$eg;}}db.mycol.find({"by":"tutorials point"}).pretty()where by = 'tutorials point'Less Than{:{$lt:}}db.mycol.find({"likes":{$lt:50}}).pretty()where likes < 50Less Than Equals{:{$lte:}}db.mycol.find({"likes":{$lte:50}}).pretty()where likes <= 50Greater Than{:{$gt:}}db.mycol.find({"likes":{$gt:50}}).pretty()where likes > 50Greater Than Equals{:{$gte:}}db.mycol.find({"likes":{$gte:50}}).pretty()where likes >= 50Not Equals{:{$ne:}}db.mycol.find({"likes":{$ne:50}}).pretty()where likes != 50Values in an array{:{$in:[,,……]}}db.mycol.find({"name":{$in:["Raj", "Ram", "Raghu"]}}).pretty()Where name matches any of the value in :["Raj", "Ram", "Raghu"]Values not in an array{:{$nin:}}db.mycol.find({"name":{$nin:["Ramu", "Raghav"]}}).pretty()Where name values is not in the array :["Ramu", "Raghav"] or, doesn’t exist at allVÀ trong MongoDBcú phápĐể truy vấn tài liệu dựa trên điều kiện NOT, bạn cần sử dụng từ khóa $not sau đây là cú pháp cơ bản của NOT − Làm cách nào để xem dữ liệu 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→ 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í.
Làm cách nào để tìm kiếm dữ liệu trong la bàn MongoDB?Trong La bàn, sử dụng bảng điều hướng bên trái để chọn cơ sở dữ liệu và bộ sưu tập bạn muốn nhập dữ liệu vào Nhấp vào tab Tài liệu Nhấp vào Thêm dữ liệu và chọn Chèn tài liệu Đảm bảo rằng Chế độ xem được đặt thành JSON hoặc {} và dán tài liệu JSON đã sao chép vào trường Nhấp vào Chèn |