Biểu thị một khoảng thời gian, được mã hoá dưới dạng Dấu thời gian bắt đầu (bao gồm) và Dấu thời gian kết thúc (không bao gồm).
Điểm bắt đầu phải nhỏ hơn hoặc bằng điểm kết thúc. Khi thời gian bắt đầu bằng thời gian kết thúc, khoảng thời gian sẽ trống (không khớp với thời gian nào). Khi cả thời gian bắt đầu và kết thúc đều không được chỉ định, khoảng thời gian sẽ khớp với bất kỳ thời gian nào.
Không bắt buộc. Bắt đầu khoảng thời gian bao gồm cả giá trị đầu và giá trị cuối.
Nếu được chỉ định, Dấu thời gian khớp với khoảng thời gian này phải giống hoặc sau thời điểm bắt đầu.
Sử dụng RFC 3339, trong đó đầu ra được tạo sẽ luôn được chuẩn hoá theo Z và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các độ dời khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".
Không bắt buộc. Kết thúc khoảng thời gian, không bao gồm giá trị đầu và giá trị cuối.
Nếu được chỉ định, Dấu thời gian khớp với khoảng thời gian này phải nằm trước thời điểm kết thúc.
Sử dụng RFC 3339, trong đó đầu ra được tạo sẽ luôn được chuẩn hoá theo Z và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các độ dời khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".
[[["Dễ hiểu","easyToUnderstand","thumb-up"],["Giúp tôi giải quyết được vấn đề","solvedMyProblem","thumb-up"],["Khác","otherUp","thumb-up"]],[["Thiếu thông tin tôi cần","missingTheInformationINeed","thumb-down"],["Quá phức tạp/quá nhiều bước","tooComplicatedTooManySteps","thumb-down"],["Đã lỗi thời","outOfDate","thumb-down"],["Vấn đề về bản dịch","translationIssue","thumb-down"],["Vấn đề về mẫu/mã","samplesCodeIssue","thumb-down"],["Khác","otherDown","thumb-down"]],["Cập nhật lần gần đây nhất: 2025-08-29 UTC."],[],[],null,["# Interval\n\n- [JSON representation](#SCHEMA_REPRESENTATION)\n\nRepresents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive).\n\nThe start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time.\n\n| JSON representation |\n|----------------------------------------------------|\n| ``` { \"startTime\": string, \"endTime\": string } ``` |\n\n| Fields ||\n|---------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `start``Time` | `string (`[Timestamp](https://protobuf.dev/reference/protobuf/google.protobuf/#timestamp)` format)` Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than \"Z\" are also accepted. Examples: `\"2014-10-02T15:01:23Z\"`, `\"2014-10-02T15:01:23.045123456Z\"` or `\"2014-10-02T15:01:23+05:30\"`. |\n| `end``Time` | `string (`[Timestamp](https://protobuf.dev/reference/protobuf/google.protobuf/#timestamp)` format)` Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than \"Z\" are also accepted. Examples: `\"2014-10-02T15:01:23Z\"`, `\"2014-10-02T15:01:23.045123456Z\"` or `\"2014-10-02T15:01:23+05:30\"`. |"]]