MongoDB lưu trữ tài liệu trên đĩa ở định dạng tuần tự hóa BSON. BSON là biểu diễn nhị phân của tài liệu JSON, mặc dù định dạng dữ liệu BSON cung cấp nhiều loại dữ liệu hơn JSON. Trình bao JavaScript mongo và trình điều khiển ngôn ngữ MongoDB dịch giữa BSON và biểu diễn tài liệu theo ngôn ngữ cụ thể
BSON hỗ trợ các loại dữ liệu sau dưới dạng giá trị trong tài liệu. Mỗi loại dữ liệu có một số tương ứng [số ID nguyên từ 1 đến 255] có thể được sử dụng với toán tử $type để truy vấn tài liệu theo loại BSON
Các kiểu dữ liệu MongoDB và số ID tương ứng
TypeDescriptionNumberDoubleĐại diện cho một giá trị float. Chuỗi 1StringBSON là UTF-8. Nói chung, trình điều khiển cho mỗi ngôn ngữ lập trình chuyển đổi từ định dạng chuỗi của ngôn ngữ sang UTF-8 khi tuần tự hóa và giải tuần tự hóa BSON. Điều này cho phép lưu trữ hầu hết các ký tự quốc tế trong chuỗi BSON một cách dễ dàng. [1] Ngoài ra, MongoDB $regex truy vấn hỗ trợ UTF-8 trong chuỗi regex. 2ObjectĐại diện cho một tài liệu nhúng. 3ArraySets hoặc danh sách giá trị có thể được biểu diễn dưới dạng mảng. 4Dữ liệu nhị phânDữ liệu nhị phân là một chuỗi các byte tùy ý, nó không thể được thao tác từ trình bao. 5Object idObjectIds [mã định danh tài liệu MongoDB, tương đương với khóa Chính] là. nhỏ, có thể là duy nhất, tạo nhanh và có thứ tự. Các giá trị này bao gồm 12 byte, trong đó bốn byte đầu tiên là dấu thời gian phản ánh việc tạo ObjectId. 7Boolean Một logic đúng hoặc sai. Sử dụng để đánh giá xem một điều kiện là đúng hay sai8DateBSON Ngày là số nguyên 64 bit biểu thị số mili giây kể từ kỷ nguyên Unix [ngày 1 tháng 1 năm 1970]. Điều này dẫn đến một phạm vi ngày có thể biểu thị được khoảng 290 triệu năm trong quá khứ và tương lai. 9NullIt đại diện cho cả giá trị null và trường không tồn tại. 10Biểu thức chính quyRegExp ánh xạ trực tiếp tới Javascript RegExp11JavaScript 13SymbolKhông được trình bao hỗ trợ. Nếu shell nhận được một biểu tượng từ cơ sở dữ liệu, nó sẽ chuyển đổi nó thành một chuỗi. 14JavaScript [có phạm vi] Số nguyên 1532 bitCác số không có dấu thập phân sẽ được lưu dưới dạng số nguyên 32 bit. 16Dấu thời gianBSON có loại dấu thời gian đặc biệt để sử dụng MongoDB nội bộ và không được liên kết với loại Ngày thông thường. Giá trị dấu thời gian là giá trị 64 bit trong đó
- 32 bit đầu tiên là giá trị time_t [giây kể từ kỷ nguyên Unix]
- 32 bit thứ hai là thứ tự tăng dần cho các hoạt động trong một giây nhất định
So sánh giá trị của các loại BSON khác nhau
Khi so sánh các giá trị của các loại BSON khác nhau, MongoDB sử dụng thứ tự so sánh sau, từ thấp nhất đến cao nhất
OrderData Type1MinKey [loại nội bộ]2Null3Numbers [int, longs, double]4Symbol, String5Object6Array7BinData8ObjectId9Boolean10Date, Timestamp11Regular Expression12MaxKey [loại nội bộ]
Trong bài viết trước của chúng tôi, chúng tôi đã xem cách tạo và loại bỏ các bộ sưu tập trong MongoDB. Chúng ta đã thấy cú pháp và lệnh để thực hiện các thao tác này. Bây giờ, trước khi tiếp tục, chúng ta nên biết về Các kiểu dữ liệu MongoDB
Trong bài viết này, chúng ta sẽ thảo luận về 16 loại dữ liệu khác nhau trong MongoDB. MongoDB Double, chuỗi MongoDB, đối tượng MongoDB, mảng MongoDB, javascript MongoDB có phạm vi, với các ví dụ của chúng
Vì vậy, hãy thảo luận về các kiểu dữ liệu MongoDB
Kiểu dữ liệu MongoDB
MongoDB lưu trữ tài liệu trong BSON, là định dạng được mã hóa nhị phân của JSON. Về cơ bản, tên BSON xuất phát từ JSON được mã hóa nhị phân. Định dạng dữ liệu BSON cung cấp nhiều loại khác nhau, được sử dụng khi chúng tôi lưu trữ các đối tượng JavaScript ở dạng nhị phân
Chúng tôi có thể thực hiện các cuộc gọi thủ tục từ xa trong MongoDB bằng cách sử dụng BSON. Tất cả các kiểu dữ liệu BSON đều được hỗ trợ trong MongoDB. Dưới đây là các loại dữ liệu MongoDB đã liệt kê. Mỗi kiểu dữ liệu MongoDB tương ứng với một số duy nhất được sử dụng để xác định chúng trong phương thức $type
MongoDB Kiểu dữ liệuNumberDouble1String2Object3Array4Dữ liệu nhị phân5Undefined6Object Id7Boolean9Date10Null11Regular Expression12JavaScript13symbol14JavaScript với phạm vi15Integer16 và 18timestamp10Min key255Max key127Luôn cập nhật các xu hướng công nghệ mới nhất
Tham gia DataFlair trên Telegram.
Các kiểu dữ liệu khác nhau trong MongoDB
Ở đây, chúng ta sẽ thảo luận về 16 kiểu dữ liệu MongoDB khác nhau với các ví dụ, hãy thảo luận từng cái một
a. Kép
Kiểu dữ liệu kép được sử dụng để lưu trữ các giá trị dấu phẩy động. Hãy xem với một ví dụ, làm thế nào chúng ta có thể làm điều đó.
Ví dụ-
Nhân đôi – Các loại dữ liệu trong MongoDB
Trong ví dụ trên, chúng tôi đã chèn một giá trị động 12345. 67 ở kiểu dữ liệu double sau khi tạo biến
b. Sợi dây
Đây là loại dữ liệu MongoDB được sử dụng phổ biến nhất, chuỗi BSON là UTF-8. Trình điều khiển cho mỗi ngôn ngữ lập trình chuyển đổi từ định dạng chuỗi của ngôn ngữ sang UTF-8 trong khi tuần tự hóa và hủy tuần tự hóa BSON
Điều này giúp dễ dàng lưu trữ hầu hết các ký tự quốc tế trong chuỗi BSON. Chuỗi phải hợp lệ để được lưu.
Ví dụ- Chúng tôi đã chèn một chuỗi vào tài liệu. Ở đây, chúng tôi đã sử dụng cơ sở dữ liệu “dataflair”.
Chuỗi – Kiểu dữ liệu trong MongoDB
c. Sự vật
Kiểu dữ liệu đối tượng lưu trữ tài liệu nhúng. Nếu một tài liệu chứa một tài liệu khác ở dạng cặp khóa-giá trị thì loại tài liệu đó được gọi là tài liệu nhúng
Ví dụ- Chúng tôi đã chèn một tài liệu có tên local vào một tài liệu khác của cơ sở dữ liệu “dataflair”. Điều này được lưu trữ trong kiểu dữ liệu đối tượng
Đối tượng – Các loại dữ liệu trong MongoDB
d. Mảng
Các kiểu dữ liệu MongoDB này lưu trữ mảng. Một tập hợp các giá trị được biểu diễn dưới dạng một mảng. Kiểu dữ liệu này có thể lưu trữ nhiều giá trị và kiểu dữ liệu
Ví dụ- Hãy lưu trữ một số giá trị trong các mảng biến, local1, local2, local3. Chúng tôi đã lưu trữ một kiểu dữ liệu chuỗi, Số nguyên, float và ngày trong các kiểu dữ liệu mảng này
Mảng – Các kiểu dữ liệu trong MongoDB
e. Dữ liệu nhị phân
Các loại dữ liệu MongoDB này lưu trữ dữ liệu nhị phân trong đó.
Ví dụ-
Dữ liệu nhị phân – Các loại dữ liệu trong MongoDB
f. Chưa xác định
Loại dữ liệu MongoDB này lưu trữ các giá trị không xác định.
Ví dụ-
Không xác định – Các kiểu dữ liệu trong MongoDB
g. ID đối tượng
Loại dữ liệu này trong MongoDB lưu trữ ID khóa duy nhất của tài liệu được lưu trữ. Có trường an_id trong MongoDB cho mỗi tài liệu. Dữ liệu được lưu trữ trong Id ở định dạng thập lục phân. Kích thước của ObjectId là 12 byte được chia thành bốn phần như sau
Tên bộ phậnKích thước[byte]Dấu thời gian4Id máy3Process Id2Counter3Thí dụ-
ObjectId – Các kiểu dữ liệu trong MongoDB
h. Boolean
Kiểu dữ liệu Boolean lưu trữ giá trị Boolean i. e. đúng sai.
Ví dụ-
Boolean – Các kiểu dữ liệu trong MongoDB
i. Ngày
Kiểu dữ liệu ngày lưu trữ ngày hoặc giờ hiện tại. Có nhiều phương pháp khác nhau để trả về ngày. Nó có thể là một chuỗi hoặc là một đối tượng ngày tháng. Trong bảng dưới đây, chúng tôi đã thảo luận về các phương pháp cho ngày
Date MethodDescriptionDate[] Nó trả về ngày hiện tại ở định dạng chuỗi. New Date[] Trả về một đối tượng ngày tháng. Sử dụng trình bao bọc ISODate[]. ISODate[] Nó cũng trả về một đối tượng ngày tháng. Sử dụng trình bao bọc ISODate[]Thí dụ-
Ngày- Các kiểu dữ liệu trong MongoDB
j. Vô giá trị
Loại dữ liệu MongoDB này lưu trữ một giá trị null trong đó.
Ví dụ-
Null – Các loại dữ liệu trong MongoDB
k. Biểu hiện thông thường
Các loại dữ liệu MongoDB này lưu trữ các biểu thức chính quy trong MongoDB. Nó ánh xạ trực tiếp tới JavaScript RegExp.
Ví dụ-
Biểu thức chính quy – Các kiểu dữ liệu trong MongoDB
l. JavaScript
Các loại dữ liệu MongoDB này lưu trữ dữ liệu JavaScript mà không có phạm vi. Có một kiểu dữ liệu khác để lưu trữ dữ liệu với phạm vi.
Ví dụ-
JavaScript – Các loại dữ liệu trong MongoDB
m. Biểu tượng
Các loại dữ liệu MongoDB này tương tự như loại dữ liệu chuỗi. Nó không được hỗ trợ bởi shell. Nhưng nếu shell nhận được một biểu tượng từ cơ sở dữ liệu, nó sẽ được chuyển đổi thành chuỗi.
Ví dụ-
Biểu tượng – Kiểu dữ liệu trong MongoDB
n. JavaScript có phạm vi
Các loại dữ liệu MongoDB này lưu trữ dữ liệu JavaScript với một phạm vi.
Ví dụ-
Javascript có phạm vi – Các loại dữ liệu trong MongoDB
o. số nguyên
Các loại dữ liệu MongoDB này được sử dụng để lưu trữ một giá trị số nguyên. Có hai dạng có sẵn cho loại dữ liệu này, 32 bit và 64 bit.
Ví dụ-
Số nguyên – Các loại dữ liệu trong MongoDB
p. dấu thời gian
Loại dữ liệu này được sử dụng để lưu dấu thời gian. Ngoài ra, điều này hữu ích khi chúng tôi sửa đổi dữ liệu của mình để lưu giữ hồ sơ. Đây là loại dữ liệu giá trị 64-bit.
Ví dụ-
Dấu thời gian – Các loại dữ liệu trong MongoDB
Trong ví dụ đã cho, giá trị ban đầu của dấu thời gian là [0, 0], sau đó là [1523790696, 1]. Ở đây, giá trị đầu tiên là dấu thời gian và giá trị khác là thứ tự hoạt động
q. Phím tối thiểu & tối đa
Khóa tối thiểu so sánh giá trị của phần tử BSON thấp nhất. Phím tối đa so sánh giá trị với phần tử BSON cao nhất. Cả hai đều là kiểu dữ liệu nội bộ.
Ví dụ-
Min & Min Key – Các loại dữ liệu trong MongoDB
Đây là tất cả về Hướng dẫn về kiểu dữ liệu MongoDB. Hy vọng bạn thích lời giải thích của chúng tôi về các loại dữ liệu khác nhau trong MongoDB
Sự kết luận
Do đó, chúng ta đã thảo luận về các Kiểu dữ liệu chính của MongoDB. BSON hỗ trợ nhiều loại dữ liệu hơn JSON. Kiểu dữ liệu thời gian không được hỗ trợ trong JSON, nhưng BSON hỗ trợ nó
Hơn nữa, chúng tôi sẽ thảo luận về cách các hoạt động được thực hiện trên các tài liệu. Hơn nữa, nếu bạn có bất kỳ câu hỏi nào, vui lòng hỏi trong phần bình luận
Nếu bạn hài lòng với DataFlair, đừng quên làm chúng tôi hài lòng với phản hồi tích cực của bạn trên Google. Facebook