Hướng dẫn where is mongodb record by id? - bản ghi mongodb bằng id ở đâu?


Để tìm bản ghi bởi _id trong MongoDB, bạn có thể sử dụng cú pháp sau

db.yourCollectionName.find({"_id":yourObjectId});

Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}

Sau đây là truy vấn để hiển thị tất cả các tài liệu từ bộ sưu tập với phương thức trợ giúp của find ()

> db.findRecordByIdDemo.find().pretty();

Điều này sẽ tạo ra đầu ra sau

{
   "_id" : ObjectId("5c9dc2c875e2eeda1d5c3671"),
   "CustomerName" : "Larry",
   "CustomerAge" : 26
}
{
   "_id" : ObjectId("5c9dc2d175e2eeda1d5c3672"),
   "CustomerName" : "Bob",
   "CustomerAge" : 20
}
{
   "_id" : ObjectId("5c9dc2d775e2eeda1d5c3673"),
   "CustomerName" : "Carol",
   "CustomerAge" : 22
}
{
   "_id" : ObjectId("5c9dc2e375e2eeda1d5c3674"),
   "CustomerName" : "David",
   "CustomerAge" : 24
}
Following is the query to find record by _id in MongoDB:
> db.findRecordByIdDemo.find({"_id":ObjectId("5c9dc2d175e2eeda1d5c3672")}).pretty();

Điều này sẽ tạo ra đầu ra sau

{
   "_id" : ObjectId("5c9dc2d175e2eeda1d5c3672"),
   "CustomerName" : "Bob",
   "CustomerAge" : 20
}

Hướng dẫn where is mongodb record by id? - bản ghi mongodb bằng id ở đâu?

Cập nhật vào ngày 30 tháng 3 năm 2019 22:30:25

  • Câu hỏi và câu trả lời liên quan
  • Làm thế nào để tìm bằng ID trong MongoDB?
  • MongoDB, Tìm tất cả các tài liệu trong đó ID tài sản bằng để ghi ID?
  • Phù hợp với các mục thu gom MongoDB bằng ID?
  • Làm thế nào để in id của bản ghi trong Android sqlite?
  • MongoDB truy vấn để tìm một bản ghi thành phố cụ thể từ một bộ sưu tập
  • Làm thế nào chúng ta có thể cập nhật một bản ghi trong MongoDB?
  • Truy vấn MySQL để xóa một bản ghi với ID thấp nhất?
  • Làm thế nào để bạn tìm thấy một bản ghi MongoDB sâu hai cấp?
  • Chọn bản ghi trên cùng từ một bảng do Desc đặt hàng trên cơ sở ID?
  • Tôi có thể lấy nhiều tài liệu từ MongoDB bằng ID không?
  • Làm thế nào để tìm kiếm một bản ghi theo ngày trong bảng MySQL?
  • Hiển thị bản ghi với ID không trùng lặp bằng cách sử dụng nhóm MySQL bằng cách và có
  • Làm cách nào để thêm một trường vào hồ sơ hiện có trong MongoDB?
  • MongoDB Biểu thức chính quy để phù hợp với một bản ghi cụ thể?
  • Làm thế nào để xóa bản ghi trùng lặp trong MongoDB 3.x?

Tài liệu về nhà → Hướng dẫn sử dụng MongoDBMongoDB Manual

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
1 return một ObjectID mới. Objectid 12 byte bao gồm:

Returns a new ObjectId. The 12-byte ObjectId consists of:

  • Một dấu thời gian 4 byte, đại diện cho sự sáng tạo của Objectid, được đo bằng giây kể từ thời đại unix.

  • Giá trị ngẫu nhiên 5 byte được tạo một lần cho mỗi quá trình. Giá trị ngẫu nhiên này là duy nhất cho máy và quy trình.

  • Bộ đếm tăng 3 byte, khởi tạo thành một giá trị ngẫu nhiên.

Mặc dù bản thân định dạng BSON là ít endian, các giá trị dấu thời gian và bộ đếm là lớn, nhưng các byte quan trọng nhất xuất hiện đầu tiên trong chuỗi byte.

Nếu một giá trị số nguyên được sử dụng để tạo ObjectID, số nguyên sẽ thay thế dấu thời gian.

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
2 có thể chấp nhận một trong các đầu vào sau: can accept one of the following inputs:

Kiểu đầu vào

Sự mô tả

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
3

Không bắt buộc. Một giá trị chuỗi thập lục phân 24 ký tự cho ObjectID mới.

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
4

Không bắt buộc. Giá trị số nguyên, tính bằng giây, được thêm vào Epoch Unix để tạo dấu thời gian mới.Unix epoch to create the new timestamp.

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
2 có thuộc tính và phương thức sau: has the following attribute and methods:

Attribute/Method

Sự mô tả

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
6

Không bắt buộc. Một giá trị chuỗi thập lục phân 24 ký tự cho ObjectID mới.

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
7

Không bắt buộc. Giá trị số nguyên, tính bằng giây, được thêm vào Epoch Unix để tạo dấu thời gian mới.

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
8

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
2 có thuộc tính và phương thức sau:

> db.findRecordByIdDemo.find().pretty();
0

Trả về biểu diễn chuỗi thập lục phân của đối tượng.

Trả về phần dấu thời gian của đối tượng là một ngày.

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
2 with no argument:

Trả về biểu diễn JavaScript dưới dạng một chuỗi theo nghĩa đen "

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
9".

ObjectId("507f1f77bcf86cd799439011")

Trả về biểu diễn của đối tượng dưới dạng chuỗi thập lục phân. Chuỗi được trả về là thuộc tính

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
6.
> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
2
with a unique hexadecimal string:

y = ObjectId("507f191e810c19729de860ea")

Để tạo một ObjectID mới, hãy sử dụng

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
2 mà không có đối số:

ObjectId("507f191e810c19729de860ea")

Trong ví dụ này, giá trị của

> db.findRecordByIdDemo.find().pretty();
3 là:

ObjectId("507f191e810c19729de860ea").str

Để tạo một ObjectID mới bằng cách sử dụng

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
2 với chuỗi thập lục phân duy nhất:

Trong ví dụ này, giá trị của

> db.findRecordByIdDemo.find().pretty();
5 sẽ là:

newObjectId = ObjectId(32)

ObjectID giống với:

> db.findRecordByIdDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2c875e2eeda1d5c3671")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Bob","CustomerAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d175e2eeda1d5c3672")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"Carol","CustomerAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2d775e2eeda1d5c3673")
}
> db.findRecordByIdDemo.insertOne({"CustomerName":"David","CustomerAge":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9dc2e375e2eeda1d5c3674")
}
0

Bốn byte đầu tiên của ObjectID là số giây kể từ kỷ nguyên Unix. Trong ví dụ này

> db.findRecordByIdDemo.find().pretty();
8 giây, được biểu thị bằng thập lục phân là
> db.findRecordByIdDemo.find().pretty();
9, được thêm vào. Một phần tử ngẫu nhiên năm byte và bộ đếm ba byte tạo thành phần còn lại của ObjectID.Unix epoch. In this example
> db.findRecordByIdDemo.find().pretty();
8 seconds, represented in hexadecimal as
> db.findRecordByIdDemo.find().pretty();
9, are added. A five byte random element and a three byte counter make up the rest of the ObjectId.

Mẹo

Xem thêm:

Tôi có thể tìm ID MongoDB ở đâu?

MongoDB cung cấp một chức năng với tên findById () được sử dụng để truy xuất tài liệu khớp với 'id' theo quy định của người dùng. Để sử dụng findByid trong hàm mongoDB, find () hàm được sử dụng. Nếu không tìm thấy tài liệu nào phù hợp với 'ID' được chỉ định, nó sẽ trả về NULL.findById() which is used to retrieve the document matching the 'id' as specified by the user. In order to use findById in MongoDB, find() function is used. If no document is found matching the specified 'id', it returns null.

Làm thế nào để tôi tìm thấy một bản ghi cụ thể trong MongoDB?

Tìm () phương thức.Trong MongoDB, phương thức Find () được sử dụng để chọn các tài liệu trong bộ sưu tập và trả con trỏ cho các tài liệu đã chọn.. In MongoDB, find() method is used to select documents in a collection and return a cursor to the selected documents.

$ _ Id trong MongoDB là gì?

Như bạn thấy, trong ví dụ về tài liệu MongoDB, trường _ID được gọi là ID đối tượng.MongoDB sử dụng ObjectIds làm giá trị mặc định của trường _id của mỗi tài liệu, được tạo trong quá trình tạo bất kỳ tài liệu nào.ID đối tượng được coi là khóa chính trong bất kỳ bộ sưu tập MongoDB nào.Object ID. MongoDB uses ObjectIds as the default value of _id field of each document, which is generated during the creation of any document. Object ID is treated as the primary key within any MongoDB collection.

Trường ID trong MongoDB là gì?

Trường _ID trong MongoDB, mỗi tài liệu được lưu trữ trong một bộ sưu tập đòi hỏi một trường _ID duy nhất hoạt động như một khóa chính.Nếu một tài liệu được chèn bỏ qua trường _ID, trình điều khiển MongoDB sẽ tự động tạo một ObjectID cho trường _ID.each document stored in a collection requires a unique _id field that acts as a primary key. If an inserted document omits the _id field, the MongoDB driver automatically generates an ObjectId for the _id field.