Tài liệu về nhà → vỏ MongoDB → MongoDB Shell
Trên trang này
- Ngày
- ID đối tượng
- Int32
- Dài
- Decimal128
- Bình đẳng và sắp xếp thứ tự
- Dấu thời gian
- Kiểu kiểm tra
- Ví dụ
- Trở lại ngày làm chuỗi
- Trả lại
2Timestamp[ { "t": , "i": } ]
- Các loại số
- Tính nhất quán loại số mặc định
- Dấu thời gian một tài liệu mới
- Tạo dấu thời gian tùy chỉnh
- Nhập kiểm tra bằng
3Timestamp[ { "t": , "i": } ]
- Nhập kiểm tra với một hàm tạo
Máy chủ MongoDB lưu trữ dữ liệu bằng định dạng BSON hỗ trợ một số loại dữ liệu bổ sung không có sẵn bằng định dạng JSON. So với Shell Legacy
Timestamp[ { "t": , "i": } ]
4, Shell MongoDB [Timestamp[ { "t": , "i": } ]
5] có xử lý loại phù hợp hơn với các loại mặc định được sử dụng bởi các trình điều khiển MongoDB.BSON format which supports some additional data types that are not available using the
JSON format. Compared to the legacy Timestamp[ { "t": , "i": } ]
4 shell, MongoDB Shell [Timestamp[ { "t": , "i": } ]
5] has type handling which is better aligned with the default types used by the MongoDB drivers.Tài liệu này nêu bật những thay đổi trong việc sử dụng loại giữa
Timestamp[ { "t": , "i": } ]
5 và shell Legacy Timestamp[ { "t": , "i": } ]
4. Xem tài liệu tham khảo JSON mở rộng để biết thêm thông tin về các loại được hỗ trợ.Extended JSON reference for additional information on supported types.Timestamp[ { "t": , "i": } ]
5 cung cấp các phương thức khác nhau để trả về ngày, dưới dạng chuỗi hoặc dưới dạng đối tượng Timestamp[ { "t": , "i": } ]
2:Phương thức
0 trả về ngày hiện tại dưới dạng chuỗi.var myDateString = Date[];
Trình xây dựng
1 trả về một đối tượngvar myDateString = Date[];
2 bằng cách sử dụng trình bao bọcTimestamp[ { "t": , "i": } ]
3.var myDateString = Date[];
Trình xây dựng
3 trả về một đối tượngvar myDateString = Date[];
2 bằng cách sử dụng trình bao bọcTimestamp[ { "t": , "i": } ]
3.var myDateString = Date[];
Timestamp[ { "t": , "i": } ]
5 cung cấp lớp trình bao bọc var myDateString = Date[];
8 xung quanh kiểu dữ liệu ObjectID. Để tạo một ObjectID mới, hãy sử dụng thao tác sau trong Timestamp[ { "t": , "i": } ]
5:ObjectId data type. To generate a new ObjectId, use the following operation in Timestamp[ { "t": , "i": } ]
5:Mẹo
Xem thêm:
Nếu một số có thể được chuyển đổi thành số nguyên 32 bit,
Timestamp[ { "t": , "i": } ]
5 sẽ lưu trữ nó là Wed Dec 19 2012 01:03:25 GMT-0500 [EST]
1. Nếu không, Timestamp[ { "t": , "i": } ]
5 mặc định lưu trữ số dưới dạng Wed Dec 19 2012 01:03:25 GMT-0500 [EST]
3. Các giá trị số được lưu trữ dưới dạng Wed Dec 19 2012 01:03:25 GMT-0500 [EST]
1 trong Timestamp[ { "t": , "i": } ]
5 sẽ được lưu trữ theo mặc định là Wed Dec 19 2012 01:03:25 GMT-0500 [EST]
3 trong shell Timestamp[ { "t": , "i": } ]
4.Chất xây dựng int32 [] có thể được sử dụng để chỉ định rõ ràng các số nguyên 32 bit.Int32[] constructor can be used to explicitly specify 32-bit integers.
db.types.insertOne[ { "_id": 1, "value": Int32["1"], "expectedType": "Int32" } ]
Cảnh báo
Các loại
Wed Dec 19 2012 01:03:25 GMT-0500 [EST]
1 và Wed Dec 19 2012 01:03:25 GMT-0500 [EST]
3 mặc định có thể được lưu trữ không nhất quán nếu bạn kết nối với cùng một bộ sưu tập bằng cách sử dụng cả shell Timestamp[ { "t": , "i": } ]
5 và Legacy Timestamp[ { "t": , "i": } ]
4.Chất xây dựng dài [] có thể được sử dụng để chỉ định rõ ràng một số nguyên 64 bit.Long[] constructor can be used to explicitly specify a 64-bit integer.
db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
Ghi chú
Trong Legacy
Timestamp[ { "t": , "i": } ]
4 shell var myDate = new Date[]; var myDateInitUsingISODateWrapper = ISODate[];
3 đã chấp nhận một chuỗi hoặc giá trị số nguyên. Trong Timestamp[ { "t": , "i": } ]
5, var myDate = new Date[]; var myDateInitUsingISODateWrapper = ISODate[];
3 chỉ chấp nhận các giá trị chuỗi. Long [] cung cấp các phương thức để quản lý chuyển đổi đến và từ các giá trị 64 bit.Timestamp[ { "t": , "i": } ]
4 shell var myDate = new Date[]; var myDateInitUsingISODateWrapper = ISODate[];
3 accepted either a string or integer value. In Timestamp[ { "t": , "i": } ]
5, var myDate = new Date[]; var myDateInitUsingISODateWrapper = ISODate[];
3 only accepts string values.
Long[] provides methods to manage conversions to and from 64-bit values.Các giá trị thập phân128 [] là các số điểm nổi dựa trên thập phân 128 bit mô phỏng độ tròn thập phân với độ chính xác chính xác. values are 128-bit decimal-based floating-point numbers that emulate decimal rounding with exact precision.
Chức năng này được dành cho các ứng dụng xử lý dữ liệu tiền tệ, chẳng hạn như tính toán tài chính, thuế và khoa học.monetary data, such as financial, tax, and scientific computations.
Loại
var myDate = new Date[]; var myDateInitUsingISODateWrapper = ISODate[];
6 BSON sử dụng định dạng đánh số điểm nổi của IEEE 754 Decimal128 hỗ trợ 34 chữ số thập phân [tức là các chữ số quan trọng] và phạm vi số mũ từ −6143 đến +6144.BSON type uses the IEEE 754 decimal128 floating-point numbering format
which supports 34 decimal digits [i.e. significant digits] and an exponent range of −6143 to +6144.db.types.insertOne[ { "_id": 5, "value": Decimal128["1"], "expectedType": "Decimal128" } ]
Ghi chú
Trong Legacy
Timestamp[ { "t": , "i": } ]
4 shell var myDate = new Date[]; var myDateInitUsingISODateWrapper = ISODate[];
3 đã chấp nhận một chuỗi hoặc giá trị số nguyên. Trong Timestamp[ { "t": , "i": } ]
5, var myDate = new Date[]; var myDateInitUsingISODateWrapper = ISODate[];
3 chỉ chấp nhận các giá trị chuỗi. Long [] cung cấp các phương thức để quản lý chuyển đổi đến và từ các giá trị 64 bit.MongoDB driver, be sure to use a driver version that supports it.Các giá trị thập phân128 [] là các số điểm nổi dựa trên thập phân 128 bit mô phỏng độ tròn thập phân với độ chính xác chính xác.
Chức năng này được dành cho các ứng dụng xử lý dữ liệu tiền tệ, chẳng hạn như tính toán tài chính, thuế và khoa học.BSON Timestamp internally in the oplog. The
ISODate["2012-12-19T06:01:17.171Z"]
0 type works similarly to the Java Timestamp type. Use the Date type for operations involving dates.Loại
var myDate = new Date[]; var myDateInitUsingISODateWrapper = ISODate[];
6 BSON sử dụng định dạng đánh số điểm nổi của IEEE 754 Decimal128 hỗ trợ 34 chữ số thập phân [tức là các chữ số quan trọng] và phạm vi số mũ từ −6143 đến +6144.Timestamp[ { "t": , "i": } ]
var myDate = new Date[]; |
var myDateInitUsingISODateWrapper = ISODate[]; |
Các giá trị của loại Wed Dec 19 2012 01:03:25 GMT-0500 [EST]
6 được so sánh và sắp xếp với các loại số khác dựa trên giá trị số thực tế của chúng. Các giá trị số của loại var myDate = new Date[]; var myDateInitUsingISODateWrapper = ISODate[];
3 dựa trên nhị phân thường có các biểu diễn gần đúng của các giá trị dựa trên thập phân và có thể không chính xác bằng các biểu diễn thập phân của chúng.
MongoDB sử dụng dấu thời gian BSON trong nội bộ trong oplog. Loại ISODate["2012-12-19T06:01:17.171Z"]
0 hoạt động tương tự như loại dấu thời gian Java. Sử dụng loại ngày cho các hoạt động liên quan đến ngày.
Chữ ký ISODate["2012-12-19T06:01:17.171Z"]
0 có hai tham số tùy chọn.
ISODate["2012-12-19T06:01:17.171Z"]
2
Tham số
Loại hìnhUNIX epoch.
Mặc định
ISODate["2012-12-19T06:01:17.171Z"]
3
Tham số
1
Loại hình
Mặc địnhTimestamp a New Document, Create a Custom Timestamp.
Sự định nghĩa ISODate["2012-12-19T06:01:17.171Z"]
6 query operator or examine the object constructor to determine types.
Số nguyên
Thời gian hiện tại kể từ thời đại unix.
Không bắt buộc. Một thời gian tính bằng giây.Type Checking with Timestamp[ { "t": , "i": } ]
3 and Type Checking with a Constructor.
Không bắt buộc. Được sử dụng để đặt hàng khi có nhiều hoạt động trong một giây nhất định.
ISODate["2012-12-19T06:01:17.171Z"]
3 không có tác dụng nếu được sử dụng mà không có ISODate["2012-12-19T06:01:17.171Z"]
2.var myDateString = Date[];
Để biết ví dụ sử dụng, hãy xem Timestamp một tài liệu mới, hãy tạo dấu thời gian tùy chỉnh.
Sử dụng toán tử truy vấn
ISODate["2012-12-19T06:01:17.171Z"]
6 hoặc kiểm tra hàm tạo đối tượng để xác định các loại.Wed Dec 19 2012 01:03:25 GMT-0500 [EST]
Toán tử JavaScript
ISODate["2012-12-19T06:01:17.171Z"]
7 trả về các giá trị chung như ISODate["2012-12-19T06:01:17.171Z"]
8 hoặc ISODate["2012-12-19T06:01:17.171Z"]
9 thay vì Wed Dec 19 2012 01:03:25 GMT-0500 [EST]
1 hoặc var myDate = ISODate["2021-03-21T06:00:00.171Z"] Object.prototype.toString.call[myDate] === "[object Date]"
1 cụ thể hơn.Toán tử
var myDate = ISODate["2021-03-21T06:00:00.171Z"] Object.prototype.toString.call[myDate] === "[object Date]"
2 của JavaScript không đáng tin cậy. Ví dụ: var myDate = ISODate["2021-03-21T06:00:00.171Z"] Object.prototype.toString.call[myDate] === "[object Date]"
2 gán các giá trị BSON trong phản hồi máy chủ cho một lớp cơ sở khác với các giá trị do người dùng cung cấp.Để biết các ví dụ sử dụng, hãy xem kiểm tra loại với
Timestamp[ { "t": , "i": } ]
3 và kiểm tra loại với hàm tạo.Để trả về ngày làm chuỗi, hãy sử dụng phương thức
var myDateString = Date[];
0, như trong ví dụ sau:var myDate = new Date[]; var myDateInitUsingISODateWrapper = ISODate[];
Bạn cũng có thể sử dụng toán tử
{ _id: 1, value: 1, expectedType: 'Int32' }, { _id: 2, value: Long["1"], expectedType: 'Long' }, { _id: 3, value: 1.01, expectedType: 'Double' }, { _id: 4, value: Decimal128["1.01"], expectedType: 'Decimal128' }, { _id: 5, value: 3200000001, expectedType: 'Double' }
6 với hàm tạo var myDateString = Date[];
3.Để in giá trị của biến, hãy nhập tên biến trong shell, như trong phần sau:
Kết quả là giá trị
Timestamp[ { "t": , "i": } ]
2 của { _id: 1, value: 1, expectedType: 'Int32' }, { _id: 2, value: Long["1"], expectedType: 'Long' }, { _id: 3, value: 1.01, expectedType: 'Double' }, { _id: 4, value: Decimal128["1.01"], expectedType: 'Decimal128' }, { _id: 5, value: 3200000001, expectedType: 'Double' }
9 được bọc trong trình trợ giúp var myDateString = Date[];
3:ISODate["2012-12-19T06:01:17.171Z"]
Để xác minh loại:
var myDate = ISODate["2021-03-21T06:00:00.171Z"] Object.prototype.toString.call[myDate] === "[object Date]"
Hoạt động trả về
db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
01.Xem xét bộ sưu tập
db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
02:{ _id: 1, value: 1, expectedType: 'Int32' }, { _id: 2, value: Long["1"], expectedType: 'Long' }, { _id: 3, value: 1.01, expectedType: 'Double' }, { _id: 4, value: Decimal128["1.01"], expectedType: 'Decimal128' }, { _id: 5, value: 3200000001, expectedType: 'Double' }
Bảng này hiển thị kết quả của lệnh
db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
03 cho db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
04 tương ứng. Các tên loại và bí danh được đưa ra trên trang BSON TYPE.BSON types page.
0
| 1
| ||||||||||||||
2
| 3
| ||||||||||||||
4
| 5
| ||||||||||||||
6
| 7
| ||||||||||||||
8
| 9
| ||||||||||||||
0
| 1
| ||||||||||||||
2
| 3
|
Truy vấn
db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
05 ngầm tìm kiếm đại diện Wed Dec 19 2012 01:03:25 GMT-0500 [EST]
3 của db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
07. Tài liệu db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
08 là var myDate = new Date[]; var myDateInitUsingISODateWrapper = ISODate[];
6 vì vậy nó không được chọn.Tuy nhiên, lưu ý rằng
db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
10 trả về cả hai loại Wed Dec 19 2012 01:03:25 GMT-0500 [EST]
1 và db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
12.Hãy xem xét bộ sưu tập
db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
13. Bộ sưu tập này bao gồm hai tài liệu giống hệt nhau, db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
14. Tài liệu đầu tiên được tạo ra trong Shell Legacy Timestamp[ { "t": , "i": } ]
4, tài liệu thứ hai được tạo vào Timestamp[ { "t": , "i": } ]
5.Chúng ta có thể sử dụng toán tử
ISODate["2012-12-19T06:01:17.171Z"]
6 trong một đường ống tổng hợp để xem loại được gán trong mỗi vỏ.ISODate["2012-12-19T06:01:17.171Z"]
6 operator in an aggregation pipeline to see the type that was assigned in each shell.db.types.insertOne[ { "_id": 5, "value": Decimal128["1"], "expectedType": "Decimal128" } ]
4Trong tài liệu đầu tiên, được tạo trong shell Legacy
Timestamp[ { "t": , "i": } ]
4, giá trị được lưu trữ dưới dạng db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
19. Trong tài liệu Timestamp[ { "t": , "i": } ]
5, giá trị được lưu trữ dưới dạng loại db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
21.db.types.insertOne[ { "_id": 5, "value": Decimal128["1"], "expectedType": "Decimal128" } ]
5Sử dụng
db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
22 mà không có tham số để chèn nhiều tài liệu bằng cách sử dụng cài đặt mặc định:db.types.insertOne[ { "_id": 5, "value": Decimal128["1"], "expectedType": "Decimal128" } ]
6Chạy
db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
23 để xem dấu thời gian. Lưu ý rằng mặc dù cả ba mục được đóng dấu trong cùng một giây, khoảng thời gian này được tăng lên trên mỗi mục.db.types.insertOne[ { "_id": 5, "value": Decimal128["1"], "expectedType": "Decimal128" } ]
7Sử dụng các tham số tùy chỉnh để chèn nhiều tài liệu với
ISODate["2012-12-19T06:01:17.171Z"]
0 cụ thể.Hoạt động này chèn ba tài liệu vào bộ sưu tập
db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
25 và sử dụng giá trị Epoch UNIX db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
26 để đặt db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
27 lần thành 9:53 GMT vào ngày 1 tháng 8 năm 2021.UNIX epoch value db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
26 to set the db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
27 times to 9:53 GMT on August 1, 2021.db.types.insertOne[ { "_id": 5, "value": Decimal128["1"], "expectedType": "Decimal128" } ]
8Các tài liệu kết quả trông như thế này:
db.types.insertOne[ { "_id": 5, "value": Decimal128["1"], "expectedType": "Decimal128" } ]
9Toán tử truy vấn
ISODate["2012-12-19T06:01:17.171Z"]
6 chấp nhận bí danh chuỗi hoặc mã số tương ứng với kiểu dữ liệu. Xem các loại BSON để biết danh sách các loại dữ liệu BSON và mã số tương ứng của chúng.ISODate["2012-12-19T06:01:17.171Z"]
6 query operator accepts either a string alias or a numeric code corresponding to the data type. See BSON Types for a list of BSON data types and their corresponding numeric codes.Ví dụ: các kiểm tra này cho loại
var myDate = new Date[]; var myDateInitUsingISODateWrapper = ISODate[];
6 tương đương:Timestamp[ { "t": , "i": } ]
0Kiểm tra đối tượng
db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
30 để xác định loại. Ví dụ: đầu ra của db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
31 là db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
32.db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
31 is a db.types.insertOne[ { "_id": 3, "value": Long["1"], "expectedType": "Long" } ]
32.Timestamp[ { "t": , "i": } ]
1