Select() trong mongodb là gì?

Phương thức findOne() được sử dụng để chọn một dữ liệu từ một bộ sưu tập trong MongoDB. Phương thức này trả về bản ghi đầu tiên của bộ sưu tập

Ví dụ

(Chọn Bản ghi đơn)

Chọn bản ghi đầu tiên từ ?employees?

Tạo một tệp js có tên "select. js", có đoạn mã sau

Mở command terminal và chạy lệnh sau

Select() trong mongodb là gì?

Chọn nhiều bản ghi

Phương thức find() được sử dụng để chọn tất cả các bản ghi từ bộ sưu tập trong MongoDB

Ví dụ

Chọn tất cả các bản ghi từ bộ sưu tập "nhân viên"

Tạo một tệp js có tên "selectall. js", có đoạn mã sau

Mở command terminal và chạy lệnh sau

Select() trong mongodb là gì?

Bạn có thể thấy rằng tất cả các bản ghi được truy xuất

Ngay từ đầu, chúng tôi muốn cho bạn biết rằng không có truy vấn select nào trong MongoDB. Truy vấn select được sử dụng trong các hệ thống dựa trên SQL nhưng có một truy vấn tương đương trong MongoDB mà chúng tôi sẽ giới thiệu cho bạn

Cách thực hiện tương đương với truy vấn chọn SQL với NodeJS và MongoDB

Hầu như tất cả các truy vấn SQL đều có các truy vấn tương đương trong MongoDB. Người mới bắt đầu thường bối rối về điều này. Trong SQL, chúng tôi sử dụng câu lệnh chọn để đọc các bản ghi từ các bảng. Tương đương với câu lệnh select trong MongoDB là phương thức find(). Nó rất dễ sử dụng. Trong bài viết này, chúng ta sẽ so sánh câu lệnh select trong SQL với câu lệnh find() tương đương của nó trong MongoDB

Trong SQL, chúng ta có các bảng. Trong MongoDB, chúng tôi có các bộ sưu tập. Chúng tôi sẽ sử dụng bộ sưu tập điện thoại thông minh được hiển thị bên dưới để thực hiện bản demo của mình

{ "_id". ObjectId("5e12d83b86d564bd4487658a"), "tên". "Apple Iphone 11", "giá". 1000, "còn hàng". đúng }
{ "_id". ObjectId("5e12d84c86d564bd4487658b"), "tên". "Samsung S10", "giá". 800, "còn hàng". đúng }
{ "_id". ObjectId("5e12d86186d564bd4487658c"), "tên". "Apple Iphone 11 pro", "giá". 1200, "còn hàng". sai }
{ "_id". ObjectId("5e12d8bf86d564bd4487658d"), "tên". "Huawei P30 pro", "giá". 900, "còn hàng". sai }
{ "_id". ObjectId("5e12d91486d564bd4487658e"), "tên". "Apple Iphone 11 pro max", "giá". 1400, "còn hàng". đúng }

Quan sát truy vấn SQL sau

Truy vấn này sẽ truy xuất tất cả các bản ghi từ bảng điện thoại thông minh. Hãy xem tương đương với truy vấn này trong MongoDB là gì

Hãy thực hiện điều này bằng mongo shell

Dấu * trong truy vấn SQL có nghĩa là chọn tất cả các cột của một hàng. Tương tự như vậy trong phương thức find() chúng ta không truyền bất kỳ tham số nào. Nó có nghĩa là chọn tất cả các trường trong một tài liệu. Bây giờ, giả sử chúng ta chỉ muốn chọn một số cột nhất định của một hàng. Trong SQL, chúng tôi sử dụng cách tiếp cận sau

CHỌN tên, giá TỪ điện thoại thông minh

Lần này, bản ghi sẽ chỉ chứa hai cột – tên và giá. Hãy xem điều gì tương đương với điều này trong MongoDB

db. điện thoại thông minh. tìm ({}, { tên. 1, giá. 1 });

Chúng tôi đã chuyển hai tham số cho phương thức find(). Cả hai đều là đối tượng. Bỏ qua đối tượng đầu tiên, chúng ta sẽ thảo luận về nó sau. Tham số thứ hai được gọi là phép chiếu

Nó sẽ trả về tất cả các tài liệu và những tài liệu này sẽ chỉ chứa các trường tên, giá và _id. Đúng. Trường _id được tạo tự động luôn ở đó. Để xóa nó khỏi kết quả, chúng ta phải sử dụng phương pháp sau

db. điện thoại thông minh. tìm ({}, { tên. 1, giá. 1, _id. 0 });

Bây giờ, hãy thảo luận về đối tượng rỗng đã được truyền cho phương thức find trước đó

Tuyên bố này tương tự như tuyên bố sau

Cả hai sẽ trả lại tất cả các tài liệu trong bộ sưu tập điện thoại thông minh. Tham số đầu tiên của phương thức find() là truy vấn. Nó là một đối tượng có thể chứa hoặc không chứa các điều kiện theo đó tất cả các tài liệu sẽ được lọc. Giả sử, chúng tôi chỉ muốn những tài liệu có giá trị của trường inStock là đúng. Trước tiên, hãy xem cách điều này được thực hiện trong SQL

CHỌN * TỪ điện thoại thông minh
WHERE inStock = "true"

Và đây là cách chúng tôi làm điều đó trong MongoDB

db. điện thoại thông minh. tìm ({ trong kho. thật });

Hãy kết hợp cả truy vấn và phép chiếu trong phương thức find

db. điện thoại thông minh. tìm ({ trong kho. đúng}, {tên. 1, giá. 1, _id. 0 });

Câu lệnh này sẽ trả về tất cả các tài liệu trong đó giá trị của trường inStock là đúng và các tài liệu này sẽ chỉ chứa các trường tên và giá

Tương đương với điều này trong SQL là

CHỌN tên, giá TỪ điện thoại thông minh
WHERE inStock = "true"

Phần kết luận

Tương đương với một select trong cơ sở dữ liệu dựa trên sql là phương thức find() trong MongoDB. Chúng tôi đã giới thiệu cho bạn một số truy vấn sql và các truy vấn tương đương trong MongoDB và hy vọng rằng bây giờ bạn đã hiểu cách chúng hoạt động. Cảm ơn bạn đã tham gia một hướng dẫn khác về ObjectRocket

Để hiểu cú pháp trên, chúng ta hãy tạo một bộ sưu tập với tài liệu. Truy vấn để tạo một bộ sưu tập với tài liệu như sau

> db.singleFieldDemo.insertOne({"StudentName":"David","StudentAge":28});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c6eba356fd07954a489067c")
}
> db.singleFieldDemo.insertOne({"StudentName":"Bob","StudentAge":18});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c6eba406fd07954a489067d")
}
> db.singleFieldDemo.insertOne({"StudentName":"Chris","StudentAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c6eba4c6fd07954a489067e")
}
> db.singleFieldDemo.insertOne({"StudentName":"Robert","StudentAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c6eba586fd07954a489067f")
}

Bây giờ bạn có thể hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find(). Truy vấn như sau

select() trong cầy mangut là gì?

select() là một phương thức của Mongoose được sử dụng để chọn các trường tài liệu sẽ được trả về trong kết quả truy vấn . Nó được sử dụng để bao gồm hoặc loại trừ các trường tài liệu được trả về từ truy vấn Mongoose. Phương thức select() thực hiện cái được gọi là phép chiếu truy vấn.

Làm cách nào để chọn db trong MongoDB?

Mở một kết nối cơ sở dữ liệu mới. Mở kết nối đến máy chủ mới bằng Mongo mới(). Sử dụng phương thức getDB() của kết nối để chọn cơ sở dữ liệu .

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

Bạn có thể sử dụng thao tác đọc để truy xuất dữ liệu từ cơ sở dữ liệu MongoDB của mình. Có nhiều loại thao tác đọc truy cập dữ liệu theo những cách khác nhau. Nếu bạn muốn yêu cầu kết quả dựa trên một bộ tiêu chí từ bộ dữ liệu hiện có, bạn có thể sử dụng thao tác tìm chẳng hạn như phương thức find() hoặc findOne().

Công dụng của phương thức pretty() là gì?

phương thức pretty() được sử dụng để định cấu hình con trỏ hiển thị kết quả ở định dạng dễ đọc .