soi kèo bóng đá truoctran 20 tháng 2 năm 2025:Postgresql 17.4, 16.8, 15.12, 14.17 và 13.20 được phát hành!
Phiên bản được hỗ trợ:hiện tại(17)16/15/14/13
Phiên bản phát triển:Devel
Phiên bản không được hỗ trợ:12/11/10/9.6/9.5/9.4/9.3/9.2/9.1/9.0/8.4/8.3/8.2/8.1/8.0/7.4/7.3/7.2/7.1
Tài liệu này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một trong soi kèo bóng đá truoctran phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

8.5. Các loại soi kèo bóng đá truoctran/giờ

PostgreSQLHỗ trợ toàn bộ bộSQLCác loại soi kèo bóng đá truoctran và giờ, được hiển thị trongBảng 8-9. soi kèo bóng đá truoctran hoạt động có sẵn trên soi kèo bóng đá truoctran loại dữ liệu này được mô tả trongPhần 9.9. soi kèo bóng đá truoctran được tính theo lịch Gregorian, ngay cả trong nhiều năm trước lịch đó được giới thiệu (xemPhần B.6Để biết thêm thông tin).

Bảng 8-9. Các loại soi kèo bóng đá truoctran/giờ

tên Kích thước lưu trữ Mô tả giá trị thấp Giá trị cao Độ phân giải
dấu thời soi kèo bóng đá truoctran [(P)] [không có múi giờ] 8 byte cả soi kèo bóng đá truoctran và giờ (không có múi giờ) 4713 bc ​​294276 AD 1 microsecond / 14 chữ số
dấu thời soi kèo bóng đá truoctran [(P)] với múi giờ 8 byte cả soi kèo bóng đá truoctran và giờ, với múi giờ 4713 bc 294276 AD 1 microsecond / 14 chữ số
soi kèo bóng đá truoctran 4 byte soi kèo bóng đá truoctran (không có thời gian trong soi kèo bóng đá truoctran) 4713 bc 5874897 AD 1 soi kèo bóng đá truoctran
Thời soi kèo bóng đá truoctran [(P)] [không có múi giờ] 8 byte Thời gian trong soi kèo bóng đá truoctran (không có soi kèo bóng đá truoctran) 00:00:00 24:00:00 1 microsecond / 14 chữ số
Thời soi kèo bóng đá truoctran [(P)] với múi giờ 12 byte Chỉ thời gian trong soi kèo bóng đá truoctran, với múi giờ 00: 00: 00+1559 24:00:00-1559 1 microsecond / 14 chữ số
Khoảng [Trường] [(P)] 16 byte Khoảng thời soi kèo bóng đá truoctran -178000000 năm 178000000 năm 1 microsecond / 14 chữ số

Lưu ý:Tiêu chuẩn SQL yêu cầu viết chỉDấu thời soi kèo bóng đá truoctranHãy tương đương vớidấu thời soi kèo bóng đá truoctran không có múi giờPostgreSQLDanh dự hành vi đó.TIMESTAMPTZđược chấp nhận làm chữ viết tắt chodấu thời soi kèo bóng đá truoctran với múi giờ; Đây là mộtPostgreSQLphần mở rộng.

thời soi kèo bóng đá truoctran,Dấu thời soi kèo bóng đá truoctranKhoảngChấp nhận giá trị chính xác tùy chọnPtrong đó chỉ định số lượng soi kèo bóng đá truoctran chữ số phân số được giữ lại trong trường giây. Theo mặc định, không có ràng buộc rõ ràng về độ chính xác.Plà từ 0 đến 6 choDấu thời soi kèo bóng đá truoctranKhoảngTYPE.

Lưu ý:KhiDấu thời soi kèo bóng đá truoctranGiá trị được lưu trữ dưới dạng số nguyên tám byte (hiện là mặc định), độ chính xác của microsecond có sẵn trong toàn bộ phạm vi giá trị. KhiDấu thời soi kèo bóng đá truoctran13886_14049Dấu thời soi kèo bóng đá truoctranGiá trị được lưu trữ dưới dạng giây trước hoặc sau nửa đêm 2000-01-01. KhiDấu thời soi kèo bóng đá truoctranCác giá trị được triển khai bằng cách sử dụng các số điểm nổi, độ chính xác của micro giây đạt được cho các soi kèo bóng đá truoctran trong vòng vài năm là 2000-01-01, nhưng độ chính xác xuống cấp cho soi kèo bóng đá truoctran xa hơn. Lưu ý rằng sử dụng các dữ liệu dấu phẩy động cho phép phạm vi lớn hơnDấu thời soi kèo bóng đá truoctranGiá trị được biểu diễn hơn hiển thị ở trên: từ 4713 trước Công nguyên đến 5874897 sau Công nguyên.

Tùy chọn thời soi kèo bóng đá truoctran biên dịch tương tự cũng xác định xemthời soi kèo bóng đá truoctranKhoảngGiá trị được lưu trữ dưới dạng số điểm nổi hoặc số nguyên tám byte. Trong trường hợp nổi, lớnKhoảnggiá trị xuống cấp trong độ chính xác khi kích thước của khoảng thời soi kèo bóng đá truoctran tăng.

chothời soi kèo bóng đá truoctransoi kèo bóng đá truoctran loại, phạm vi được phép củaPlà từ 0 đến 6 khi sử dụng lưu trữ số nguyên tám byte hoặc từ 0 đến 10 khi sử dụng lưu trữ điểm nổi.

TheKhoảngLoại có một tùy chọn bổ sung, đó là hạn chế tập hợp soi kèo bóng đá truoctran trường được lưu trữ bằng cách viết một trong những cụm từ này:

Năm

Lưu ý rằng nếu cả haiTrườngPđược chỉ định,TrườngPhải bao gồmthứ hai, vì độ chính xác chỉ áp dụng cho soi kèo bóng đá truoctran giây.

LoạiThời soi kèo bóng đá truoctran với múi giờđược xác định bởi tiêu chuẩn SQL, nhưng định nghĩa thể hiện soi kèo bóng đá truoctran thuộc tính dẫn đến tính hữu dụng đáng ngờ. Trong hầu hết soi kèo bóng đá truoctran trường hợp, sự kết hợp củasoi kèo bóng đá truoctran,Thời soi kèo bóng đá truoctran,dấu thời soi kèo bóng đá truoctran không có múi giờdấu thời soi kèo bóng đá truoctran với múi giờSẽ cung cấp một phạm vi đầy đủ về chức năng soi kèo bóng đá truoctran/thời gian được yêu cầu bởi bất kỳ ứng dụng nào.

soi kèo bóng đá truoctran loạiAbstimeRelimelà soi kèo bóng đá truoctran loại chính xác thấp hơn được sử dụng trong nội bộ. Bạn không khuyến khích sử dụng soi kèo bóng đá truoctran loại này trong soi kèo bóng đá truoctran ứng dụng;

8.5.1. Đầu vào soi kèo bóng đá truoctran/giờ

Đầu vào soi kèo bóng đá truoctran và giờ được chấp nhận ở hầu hết mọi định dạng hợp lý, bao gồm ISO 8601,SQL-CompitiT, truyền thốngPostgres, và những người khác. Đối với một số định dạng, đặt hàng soi kèo bóng đá truoctran, tháng và năm đầu vào soi kèo bóng đá truoctran là mơ hồ và có hỗ trợ để chỉ định thứ tự dự kiến ​​của các trường này.Datestyletham số đếnmdyĐể chọn diễn giải hàng tháng,DMYĐể chọn diễn giải trong tháng năm hoặcYMDĐể chọn diễn giải một tháng năm.

PostgreSQLlinh hoạt hơn trong đầu vào soi kèo bóng đá truoctran/thời gian xử lý so vớiSQLYêu cầu tiêu chuẩn. Nhìn thấyPhụ lục BĐối với các quy tắc phân tích chính xác của đầu vào soi kèo bóng đá truoctran/thời gian và cho các trường văn bản được công nhận bao gồm tháng, soi kèo bóng đá truoctran trong tuần và múi giờ.

Hãy nhớ rằng bất kỳ đầu vào soi kèo bóng đá truoctran hoặc thời gian nào cũng cần được đặt trong các trích dẫn đơn, như chuỗi văn bản. Tham khảoPhần 4.1.2.7Để biết thêm thông tin.SQLYêu cầu cú pháp sau

loại[(P)] 'giá trị'

WHEREPlà một đặc tả chính xác tùy chọn cung cấp số lượng chữ số phân số trong trường Seconds. Độ chính xác có thể được chỉ định choThời soi kèo bóng đá truoctran,Dấu thời soi kèo bóng đá truoctranKhoảngLoại. soi kèo bóng đá truoctran giá trị được phép được đề cập ở trên.

8.5.1.1. soi kèo bóng đá truoctran

Bảng 8-10Hiển thị một số đầu vào có thể chosoi kèo bóng đá truoctranloại.

Bảng 8-10. Đầu vào soi kèo bóng đá truoctran

Ví dụ Mô tả
1999-01-08 ISO 8601; soi kèo bóng đá truoctran 8 tháng 1 ở bất kỳ chế độ nào (định dạng được đề xuất)
soi kèo bóng đá truoctran 8 tháng 1 năm 1999 không rõ ràng trong bất kỳDatestyleChế độ nhập
1/8/1999 soi kèo bóng đá truoctran 8 tháng 1 trongmdychế độ; soi kèo bóng đá truoctran 1 tháng 8 trongDMYMode
1/18/1999 18 tháng 1 trongmdychế độ; bị từ chối trong soi kèo bóng đá truoctran chế độ khác
01/02/03 soi kèo bóng đá truoctran 2 tháng 1 năm 2003 trongmdychế độ; soi kèo bóng đá truoctran 1 tháng 2 năm 2003 trongDMYchế độ; soi kèo bóng đá truoctran 3 tháng 2 năm 2001 trongYMDMode
1999-Jan-08 soi kèo bóng đá truoctran 8 tháng 1 ở bất kỳ chế độ nào
Tháng 1-08-1999 soi kèo bóng đá truoctran 8 tháng 1 ở bất kỳ chế độ nào
08-Jan-1999 soi kèo bóng đá truoctran 8 tháng 1 ở bất kỳ chế độ nào
99-JAN-08 soi kèo bóng đá truoctran 8 tháng 1 trongYMDchế độ, lỗi khác
08-Jan-99 soi kèo bóng đá truoctran 8 tháng 1, ngoại trừ lỗi trongYMDMode
Jan-08-99 soi kèo bóng đá truoctran 8 tháng 1, ngoại trừ lỗi trongYMDMode
19990108 ISO 8601; soi kèo bóng đá truoctran 8 tháng 1 năm 1999 ở bất kỳ chế độ nào
990108 ISO 8601; soi kèo bóng đá truoctran 8 tháng 1 năm 1999 ở bất kỳ chế độ nào
1999.008 năm và soi kèo bóng đá truoctran trong năm
J2451187 soi kèo bóng đá truoctran Julian
soi kèo bóng đá truoctran 8 tháng 1, 99 trước Công nguyên năm 99 trước Công nguyên

8.5.1.2. Lần

Các loại thời gian của soi kèo bóng đá truoctran làThời soi kèo bóng đá truoctran [(P)] Không có múi giờThời soi kèo bóng đá truoctran [(P)] với múi giờ.Thời soi kèo bóng đá truoctranMột mình tương đương vớiThời soi kèo bóng đá truoctran không có múi giờ.

Đầu vào hợp lệ cho các loại này bao gồm một thời gian trong soi kèo bóng đá truoctran, sau đó là múi giờ tùy chọn. (Nhìn thấyBảng 8-11Bảng 8-12.) Nếu một múi giờ được chỉ định trong đầu vào choThời soi kèo bóng đá truoctran không có múi giờ, nó bị bỏ qua âm thầm. Bạn cũng có thể chỉ định một soi kèo bóng đá truoctran nhưng nó sẽ bị bỏ qua, ngoại trừ khi bạn sử dụng tên múi giờ liên quan đến quy tắc tiết kiệm ánh sáng ban soi kèo bóng đá truoctran, chẳng hạn nhưAmerica/new_york. Trong trường hợp này chỉ định soi kèo bóng đá truoctran được yêu cầu để xác định xem thời gian tiết kiệm tiêu chuẩn hay ánh sáng ban soi kèo bóng đá truoctran.Thời soi kèo bóng đá truoctran với múi giờGiá trị.

Bảng 8-11. Đầu vào thời soi kèo bóng đá truoctran

Ví dụ Mô tả
04:05:06.789 ISO 8601
04:05:06 ISO 8601
04:05 ISO 8601
040506 ISO 8601
04: 05 AM giống như 04:05; AM không ảnh hưởng đến giá trị
04: 05 PM giống như 16:05; Giờ đầu vào phải là <= 12
04:05:06.789-8 ISO 8601, với múi giờ là UTC Offset
04:05:06-08:00 ISO 8601, với múi giờ là UTC Offset
04:05-08:00 ISO 8601, với múi giờ như OFC Offset
040506-08 ISO 8601, với múi giờ như OFC Offset
040506+0730 ISO 8601, với múi giờ giờ phân số như OFC Offset
040506+07: 30: 00 OFC Offset được chỉ định thành giây (không được phép trong ISO 8601)
04: 05: 06 PST múi giờ được chỉ định bởi viết tắt
2003-04-12 04:05:06 Mỹ/New_York Múi giờ được chỉ định bởi tên đầy đủ

Bảng 8-12. Đầu vào múi giờ

Ví dụ Mô tả
PST viết tắt (cho thời soi kèo bóng đá truoctran chuẩn Thái Bình Dương)
America/new_york Tên múi giờ đầy đủ
PST8PDT Đặc tả múi giờ theo kiểu POSIX
-8:00:00 OTC Offset cho PST
-8:00 OFC Offset cho PST (Định dạng mở rộng ISO 8601)
-800 OFC Offset cho PST (Định dạng cơ bản ISO 8601)
-8 UTC Offset cho PST (Định dạng cơ bản ISO 8601)
Zulu Viết tắt quân sự cho UTC
z dạng ngắn củaZulu(Cũng trong ISO 8601)

Tham khảoPhần 8.5.3Để biết thêm thông tin về cách chỉ định soi kèo bóng đá truoctran múi giờ.

8.5.1.3. Tem thời soi kèo bóng đá truoctran

Đầu vào hợp lệ cho các loại tem thời gian bao gồm sự kết hợp của một soi kèo bóng đá truoctran và một thời gian, theo sau là múi giờ tùy chọn, theo sau là một tùy chọnADhoặcBC. (Cách khác,AD/BCCó thể xuất hiện trước múi giờ, nhưng đây không phải là thứ tự ưa thích.) Vì vậy:

1999-01-08 04:05:06

và:

1999-01-08 04:05:06 -8:00

là giá trị hợp lệ, theo dõiISO8601 tiêu chuẩn. Ngoài ra, định dạng phổ biến:

soi kèo bóng đá truoctran 8 tháng 1 04:05:06 1999 PST

được hỗ trợ.

TheSQLPhân biệt tiêu chuẩndấu thời soi kèo bóng đá truoctran không có múi giờdấu thời soi kèo bóng đá truoctran với múi giờnghĩa đen bởi sự hiện diện của A"+"hoặc"-"Biểu tượng và múi giờ bù sau thời soi kèo bóng đá truoctran. Do đó, theo tiêu chuẩn,

Timestamp '2004-10-19 10:23:54'

dấu thời soi kèo bóng đá truoctran không có múi giờ, trong khi

Timestamp '2004-10-19 10: 23: 54+02'

là Adấu thời soi kèo bóng đá truoctran với múi giờ.PostgreSQLKhông bao giờ kiểm tra nội dung của chuỗi theo nghĩa đen trước khi xác định loại của nó và do đó sẽ coi cả hai điều trên làdấu thời soi kèo bóng đá truoctran không có múi giờ. Để đảm bảo rằng một nghĩa đen được coi làdấu thời soi kèo bóng đá truoctran với múi giờ, Cho nó loại rõ ràng chính xác:

dấu thời soi kèo bóng đá truoctran với múi giờ '2004-10-19 10: 23: 54+02'

Trong một nghĩa đen đã được xác định làdấu thời soi kèo bóng đá truoctran không có múi giờ,PostgreSQLSẽ âm thầm bỏ qua bất kỳ chỉ dẫn múi giờ nào. Nghĩa là, giá trị kết quả được lấy từ các trường soi kèo bóng đá truoctran/giờ trong giá trị đầu vào và không được điều chỉnh cho múi giờ.

chodấu thời soi kèo bóng đá truoctran với múi giờ, Giá trị được lưu trữ bên trong luôn ở UTC (thời soi kèo bóng đá truoctran phối hợp phổ biến, theo truyền thống được gọi là thời soi kèo bóng đá truoctran trung bình của Greenwich,GMT). Một giá trị đầu vào có múi giờ rõ ràng được chỉ định được chuyển đổi thành UTC bằng cách sử dụng phần bù thích hợp cho múi giờ đó.timezoneTham số và được chuyển đổi thành UTC bằng cách sử dụng phần bù chotimezonekhu vực.

Khi Adấu thời soi kèo bóng đá truoctran với múi giờGiá trị là đầu ra, nó luôn được chuyển đổi từ UTC sang hiện tạitimezone27453_27556timezonehoặc sử dụngTại múi giờXây dựng (xemPhần 9.9.3).

Chuyển đổi giữadấu thời soi kèo bóng đá truoctran không có múi giờdấu thời soi kèo bóng đá truoctran với múi giờThông thường giả sử rằngdấu thời soi kèo bóng đá truoctran không có múi giờGiá trị nên được lấy hoặc đưa ra làmtimezonegiờ địa phương. Một múi giờ khác có thể được chỉ định để chuyển đổi bằng cách sử dụngTại múi giờ.

8.5.1.4. Giá trị đặc biệt

PostgreSQLHỗ trợ một số giá trị đầu vào soi kèo bóng đá truoctran/thời gian đặc biệt để thuận tiện, như thể hiện trongBảng 8-13. soi kèo bóng đá truoctran giá trịVô cực-Infinityđược thể hiện đặc biệt bên trong hệ thống và sẽ được hiển thị không thay đổi; Nhưng những người khác chỉ đơn giản là các khoản viết tắt của Notational sẽ được chuyển đổi thành giá trị soi kèo bóng đá truoctran/thời gian thông thường khi đọc.Bây giờvà soi kèo bóng đá truoctran chuỗi liên quan được chuyển đổi thành giá trị thời gian cụ thể ngay khi chúng được đọc.) Tất cả soi kèo bóng đá truoctran giá trị này cần được đặt trong soi kèo bóng đá truoctran trích dẫn đơn khi được sử dụng làm hằng số trong soi kèo bóng đá truoctran lệnh SQL.

Bảng 8-13. Đầu vào soi kèo bóng đá truoctran/giờ đặc biệt

Chuỗi nhập soi kèo bóng đá truoctran loại hợp lệ Mô tả
Epoch soi kèo bóng đá truoctran,Dấu thời soi kèo bóng đá truoctran 1970-01-01 00: 00: 00+00 (Thời soi kèo bóng đá truoctran hệ thống UNIX 0)
Vô cực soi kèo bóng đá truoctran,Timestamp muộn hơn tất cả soi kèo bóng đá truoctran tem thời gian khác
-Infinity soi kèo bóng đá truoctran,Timestamp sớm hơn tất cả soi kèo bóng đá truoctran tem thời gian khác
Bây giờ soi kèo bóng đá truoctran,Thời soi kèo bóng đá truoctran,Dấu thời soi kèo bóng đá truoctran Thời soi kèo bóng đá truoctran bắt đầu giao dịch hiện tại
hôm nay soi kèo bóng đá truoctran,Dấu thời soi kèo bóng đá truoctran Midnight (00:00) Hôm nay
soi kèo bóng đá truoctran mai soi kèo bóng đá truoctran,Dấu thời soi kèo bóng đá truoctran Nửa đêm (00:00) soi kèo bóng đá truoctran mai
soi kèo bóng đá truoctran hôm qua soi kèo bóng đá truoctran,Dấu thời soi kèo bóng đá truoctran Nửa đêm (00:00) Hôm qua
Allballs Thời soi kèo bóng đá truoctran 00: 00: 00.00 UTC

sau đâySQL-soi kèo bóng đá truoctran hàm tương thích cũng có thể được sử dụng để có được giá trị thời gian hiện tại cho loại dữ liệu tương ứng:current_date,current_time,current_timestamp,địa phương,LocalTimeStamp. (Nhìn thấyPhần 9.9.4.) Lưu ý rằng đây là soi kèo bóng đá truoctran chức năng SQL và làkhôngĐược nhận dạng trong chuỗi đầu vào dữ liệu.

THẬN TRỌNG

Trong khi soi kèo bóng đá truoctran chuỗi đầu vàoBây giờ,hôm nay,soi kèo bóng đá truoctran maisoi kèo bóng đá truoctran hôm quaĐược sử dụng trong soi kèo bóng đá truoctran lệnh SQL tương tác, chúng có thể có hành vi đáng ngạc nhiên khi lệnh được lưu để được thực thi sau, ví dụ như trong soi kèo bóng đá truoctran câu lệnh, quan điểm và định nghĩa chức năng đã chuẩn bị. Chuỗi có thể được chuyển đổi thành một giá trị thời gian cụ thể tiếp tục được sử dụng lâu sau khi nó trở nên cũ kỹ.current_date + 1an toàn hơn'soi kèo bóng đá truoctran mai' :: soi kèo bóng đá truoctran.

8.5.2. Đầu ra soi kèo bóng đá truoctran/thời gian

Định dạng đầu ra của các loại soi kèo bóng đá truoctran/thời gian có thể được đặt thành một trong bốn kiểu ISO 8601,SQL(ingres), truyền thốngPostgres(UNIXsoi kèo bóng đá truoctranĐịnh dạng) hoặc tiếng Đức. Mặc định làISOĐịnh dạng. (TheSQLTiêu chuẩn yêu cầu sử dụng định dạng ISO 8601. Tên của"SQL"Định dạng đầu ra là một tai nạn lịch sử.)Bảng 8-14Hiển thị soi kèo bóng đá truoctran ví dụ về từng kiểu đầu ra. Đầu ra củasoi kèo bóng đá truoctranThời soi kèo bóng đá truoctranCác loại thường chỉ là soi kèo bóng đá truoctran hoặc phần thời gian theo các ví dụ đã cho. Tuy nhiên,PostgresKiểu đầu ra các giá trị chỉ soi kèo bóng đá truoctran trongISOĐịnh dạng.

Bảng 8-14. Kiểu đầu ra soi kèo bóng đá truoctran/thời gian

Đặc tả kiểu Mô tả Ví dụ
ISO ISO 8601, SQL Standard 1997-12-17 07:37:16-08
SQL Phong cách truyền thống 12/17/1997 07: 37: 16.00 PST
Postgres Kiểu gốc Thứ tư 17 tháng 12 07:37:16 1997 PST
Đức Phong cách khu vực 17.12.1997 07: 37: 16.00 PST

Lưu ý:ISO 8601 Chỉ định việc sử dụng chữ hoaTĐể tách soi kèo bóng đá truoctran và giờ.PostgreSQLChấp nhận định dạng đó trên đầu vào, nhưng trên đầu ra, nó sử dụng một không soi kèo bóng đá truoctran chứ không phảiT, như được hiển thị ở trên. Điều này là cho khả năng đọc và cho tính nhất quán với RFC 3339 cũng như một số hệ thống cơ sở dữ liệu khác.

TrongSQLvà các kiểu Postgres, soi kèo bóng đá truoctran xuất hiện trước tháng nếu đặt hàng trường DMY đã được chỉ định, nếu không, tháng xuất hiện trước soi kèo bóng đá truoctran. (Nhìn thấyPhần 8.5.1Vì cách cài đặt này cũng ảnh hưởng đến việc giải thích soi kèo bóng đá truoctran giá trị đầu vào.)Bảng 8-15Hiển thị soi kèo bóng đá truoctran ví dụ.

Bảng 8-15. soi kèo bóng đá truoctran đặt hàng quy ước

DatestyleCài đặt Đặt hàng đầu vào đầu ra ví dụ
SQL, DMY soi kèo bóng đá truoctran/tháng/năm 17/12/1997 15: 37: 16.00 CET
SQL, MDY tháng/soi kèo bóng đá truoctran/năm 12/17/1997 07: 37: 16.00 PST
Postgres, DMY soi kèo bóng đá truoctran/tháng/năm Thứ tư 17 tháng 12 07:37:16 1997 PST

trongISOKiểu, múi giờ luôn được hiển thị dưới dạng độ lệch số có chữ ký từ UTC, với dấu hiệu tích cực được sử dụng cho soi kèo bóng đá truoctran khu vực phía đông Greenwich. Phần bù sẽ được hiển thị dưới dạngHH(chỉ giờ) nếu đó là số giờ không thể thiếu, khác làHH:mmNếu đó là số phút không thể thiếu, khác làHH:mm:SS. .HHhoặcHHMM).

Kiểu soi kèo bóng đá truoctran/giờ có thể được chọn bởi người dùng bằng cách sử dụngĐặt Datestylelệnh,Datestyletham số trongPostgreSql.confTệp cấu hình hoặcPGDATESTYLEBiến môi trường trên máy chủ hoặc máy khách.

Hàm định dạngto_char(xemPhần 9.8) cũng có sẵn như một cách linh hoạt hơn để định dạng soi kèo bóng đá truoctran/thời gian đầu ra.

8.5.3. Múi giờ

Múi giờ và các quy ước khu vực thời gian, bị ảnh hưởng bởi các quyết định chính trị, không chỉ là hình học trái đất. Các múi giờ trên khắp thế giới đã trở nên hơi tiêu chuẩn hóa trong những năm 1900, nhưng tiếp tục dễ bị thay đổi tùy ý, đặc biệt là liên quan đến các quy tắc tiết kiệm ánh sáng ban soi kèo bóng đá truoctran.POSTGRESQLSử dụng cơ sở dữ liệu múi giờ IANA (Olson) được sử dụng rộng rãi để biết thông tin về soi kèo bóng đá truoctran quy tắc múi giờ lịch sử. Đối với những thời điểm trong tương lai, giả định là soi kèo bóng đá truoctran quy tắc mới nhất được biết đến trong một múi giờ nhất định sẽ tiếp tục được quan sát vô thời hạn trong tương lai.

PostgreSQLNỗ lực tương thích vớiSQLĐịnh nghĩa tiêu chuẩn cho việc sử dụng điển hình. Tuy nhiên,SQLTiêu chuẩn có sự kết hợp kỳ lạ của các loại và khả năng soi kèo bóng đá truoctran và thời gian. Hai vấn đề rõ ràng là:

  • mặc dùsoi kèo bóng đá truoctranLoại không thể có múi giờ liên quan,thời soi kèo bóng đá truoctranLoại có thể. Các múi giờ trong thế giới thực có ít ý nghĩa trừ khi liên quan đến soi kèo bóng đá truoctran cũng như thời gian, vì phần bù có thể thay đổi trong năm với ranh giới thời gian tiết kiệm ánh sáng ban soi kèo bóng đá truoctran.

  • Múi thời soi kèo bóng đá truoctran mặc định được chỉ định dưới dạng bù số không đổi từUTC. Do đó không thể thích nghi với thời gian tiết kiệm ánh sáng ban soi kèo bóng đá truoctran khi thực hiện số học soi kèo bóng đá truoctran/giờ quaDSTranh giới.

Để giải quyết những khó khăn này, chúng tôi khuyên bạn nên sử dụng các loại soi kèo bóng đá truoctran/thời gian có chứa cả soi kèo bóng đá truoctran và giờ khi sử dụng múi giờ. Chúng tôi làmkhôngĐề nghị sử dụng loạiThời soi kèo bóng đá truoctran với múi giờ(mặc dù nó được hỗ trợ bởiPOSTGRESQLĐối với soi kèo bóng đá truoctran ứng dụng kế thừa và để tuân thủSQLtiêu chuẩn).POSTGRESQLGiả sử múi giờ địa phương của bạn cho bất kỳ loại nào chỉ chứa soi kèo bóng đá truoctran hoặc thời gian.

Tất cả các soi kèo bóng đá truoctran và thời gian nhận biết múi giờ được lưu trữ nội bộ trongUTC. Chúng được chuyển đổi thành giờ địa phương trong khu vực được chỉ định bởitimezoneTham số cấu hình trước khi được hiển thị cho máy khách.

PostgreSQLCho phép bạn chỉ định soi kèo bóng đá truoctran múi giờ ở ba hình thức khác nhau:

  • Ví dụ: một tên múi giờ đầy đủAmerica/new_york. Tên múi giờ được công nhận được liệt kê trongpg_timezone_namesXem (xemPhần 50.80).PostgreSQLSử dụng dữ liệu múi giờ IANA được sử dụng rộng rãi cho mục đích này, do đó, cùng tên múi giờ cũng được công nhận bởi soi kèo bóng đá truoctran phần mềm khác.

  • Viết tắt múi giờ, ví dụPST. Một đặc điểm kỹ thuật như vậy chỉ xác định một phần bù cụ thể từ UTC, trái ngược với các tên múi giờ đầy đủ có thể ngụ ý một tập hợp các quy tắc chuyển tiếp tiết kiệm ánh sáng ban soi kèo bóng đá truoctran.pg_timezone_abbrevsXem (xemPhần 50.79). Bạn không thể đặt tham số cấu hìnhtimezonehoặclog_timezoneViết tắt múi giờ, nhưng bạn có thể sử dụng chữ viết tắt trong các giá trị đầu vào soi kèo bóng đá truoctran/thời gian và vớiTại múi giờtoán tử.

  • Ngoài tên và chữ viết tắt của múi giờ,POSTGRESQLsẽ chấp nhận thông số kỹ thuật múi giờ kiểu POSIX, như được mô tả trongPhần B.5. Tùy chọn này thường không thích hợp hơn khi sử dụng múi giờ được đặt tên, nhưng có thể cần thiết nếu không có mục nhập múi giờ IANA phù hợp.

Tóm lại, đây là sự khác biệt giữa viết tắt và tên đầy đủ: chữ viết tắt đại diện cho một phần bù cụ thể từ UTC, trong khi nhiều tên đầy đủ ngụ ý quy tắc thời gian tiết kiệm ánh sáng ban soi kèo bóng đá truoctran địa phương, và do đó, có hai lần giảm hai UTC. Ví dụ,2014-06-04 12:00 Mỹ/New_YorkĐại diện cho buổi trưa giờ địa phương ở New York, trong soi kèo bóng đá truoctran cụ thể này là thời gian ban soi kèo bóng đá truoctran phía đông (UTC-4). Vì thế2014-06-04 12:00 EDTChỉ định cùng thời điểm đó. Nhưng2014-06-04 12:00 ESTChỉ định Giờ chuẩn phương Đông (UTC-5), bất kể tiết kiệm ánh sáng ban soi kèo bóng đá truoctran có hiệu quả vào soi kèo bóng đá truoctran đó không.

Để làm phức tạp soi kèo bóng đá truoctran vấn đề, một số khu vực pháp lý đã sử dụng cùng một chữ viết tắt thời gian để có nghĩa là soi kèo bóng đá truoctran phạm vi khác nhau của UTC tại soi kèo bóng đá truoctran thời điểm khác nhau; Ví dụ, trong MoscowMSKcó nghĩa là UTC+3 trong một số năm và UTC+4 ở những người khác.PostgreSQLdiễn giải các chữ viết tắt đó theo bất cứ điều gì chúng có nghĩa (hoặc có nghĩa là gần đây nhất) vào soi kèo bóng đá truoctran được chỉ định; Nhưng, như vớiestVí dụ ở trên, điều này không nhất thiết giống như thời gian dân sự địa phương vào soi kèo bóng đá truoctran đó.

Trong tất cả soi kèo bóng đá truoctran trường hợp, tên và chữ viết tắt của Timezone được công nhận không nhạy cảm với trường hợp. (Đây là một sự thay đổi từPostgreSQLPhiên bản trước 8.2, nhạy cảm với trường hợp trong một số bối cảnh nhưng không phải khác.)

Không tên Timezone và chữ viết tắt không được dây cứng vào máy chủ; Chúng được lấy từ soi kèo bóng đá truoctran tệp cấu hình được lưu trữ trong.../chia sẻ/timezone/.../chia sẻ/timezonesets/của thư mục cài đặt (xemPhần B.4).

ThetimezoneTham số cấu hình có thể được đặt trong tệpPostgreSql.confhoặc theo bất kỳ cách tiêu chuẩn nào khác được mô tả trongChương 19. Ngoài ra còn có một số cách đặc biệt để đặt nó:

  • TheSQLLệnhĐặt múi giờĐặt múi giờ cho phiên. Đây là một cách đánh vần thay thế củaĐặt thời soi kèo bóng đá truoctran thànhvới cú pháp tương thích SQL-spec hơn.

  • ThePGTZBiến môi trường được sử dụng bởilibpqKhách hàng gửiĐặt múi giờLệnh đến máy chủ khi kết nối.

8.5.4. Đầu vào khoảng

KhoảngGiá trị có thể được viết bằng cú pháp verbose sau:

[@]Số lượng Đơn vị[Số lượng Đơn vị...] [Hướng]

WHERESố lượnglà một số (có thể đã ký);Đơn vịmicrosecond,Millisecond,thứ hai,phút,giờ,soi kèo bóng đá truoctran,tuần,tháng,năm,Decade,Century,Thiên niên kỷhoặc viết tắt hoặc số nhiều của soi kèo bóng đá truoctran đơn vị này;Hướngcó thểAGOhoặc trống. Dấu hiệu tại (@) là tiếng ồn tùy chọn. Số lượng của soi kèo bóng đá truoctran đơn vị khác nhau được thêm vào với kế toán dấu hiệu phù hợp.AGOphủ nhận tất cả soi kèo bóng đá truoctran trường. Cú pháp này cũng được sử dụng cho đầu ra khoảng, nếuIntervalStyleđược đặt thànhPostgres_verbose.

Số lượng soi kèo bóng đá truoctran, giờ, phút và giây có thể được chỉ định mà không cần dấu hiệu đơn vị rõ ràng. Ví dụ,'1 12:59:10'được đọc giống như'1 soi kèo bóng đá truoctran 12 giờ 59 phút 10 giây'. Ngoài ra, sự kết hợp giữa năm và tháng có thể được chỉ định với một dấu gạch ngang;'200-10'được đọc giống như'200 năm 10 tháng'. (Trên thực tế, soi kèo bóng đá truoctran hình thức ngắn hơn là soi kèo bóng đá truoctran hình thức duy nhất được cho phép bởiSQLTiêu chuẩn và được sử dụng cho đầu ra khiIntervalStyleđược đặt thànhSQL_STANDARD.)

Giá trị khoảng thời soi kèo bóng đá truoctran cũng có thể được viết dưới dạng khoảng thời soi kèo bóng đá truoctran ISO 8601, sử dụng"Định dạng với người thiết kế"của tiêu chuẩn Phần 4.4.3.2 hoặc"Định dạng thay thế"của phần 4.4.3.3. Định dạng với người chỉ định trông như thế này:

PSố lượng Đơn vị[ Số lượng Đơn vị...] [T [ Số lượng Đơn vị...]]

Chuỗi phải bắt đầu bằng mộtPvà có thể bao gồm mộtTgiới thiệu các đơn vị thời gian trong soi kèo bóng đá truoctran. Các chữ viết tắt đơn vị có sẵn được đưa ra trongBảng 8-16. Các đơn vị có thể bị bỏ qua và có thể được chỉ định theo bất kỳ thứ tự nào, nhưng các đơn vị nhỏ hơn một soi kèo bóng đá truoctran phải xuất hiện sauT. Cụ thể, ý nghĩa củaMphụ thuộc vào việc nó là trước hay sauT.

Bảng 8-16. Iso 8601 chữ viết tắt đơn vị khoảng

Viết tắt có nghĩa là
y năm
M tháng (trong phần soi kèo bóng đá truoctran)
W tuần
D soi kèo bóng đá truoctran
H giờ
M phút (trong phần thời soi kèo bóng đá truoctran)
S giây

ở định dạng thay thế:

P [ năm-tháng-soi kèo bóng đá truoctran ] [Tgiờ:phút:giây ]

Chuỗi phải bắt đầu bằngPvà ATTách các phần soi kèo bóng đá truoctran và thời gian của khoảng thời gian. Các giá trị được đưa ra dưới dạng số tương tự như soi kèo bóng đá truoctran ISO 8601.

Khi viết hằng số khoảng bằngTrườngĐặc điểm kỹ thuật hoặc khi gán một chuỗi cho một cột khoảng được xác định vớiTrườngĐặc điểm kỹ thuật, việc giải thích soi kèo bóng đá truoctran đại lượng không được đánh dấu phụ thuộc vàoTrường. Ví dụKhoảng '1' nămđược đọc là 1 năm, trong khiKhoảng '1'Có nghĩa là 1 giây. Ngoài ra, soi kèo bóng đá truoctran giá trị trường"Đúng bên phải"của trường ít có ý nghĩa nhất được phép bởitrườngĐặc điểm kỹ thuật bị loại bỏ âm thầm. Ví dụ: ViếtKhoảng '1 soi kèo bóng đá truoctran 2:03:04' Giờ đến phútKết quả là bỏ trường giây, nhưng không phải trường soi kèo bóng đá truoctran.

theoSQLTiêu chuẩn Tất cả soi kèo bóng đá truoctran trường của giá trị khoảng phải có cùng một dấu, do đó một dấu hiệu tiêu cực hàng đầu áp dụng cho tất cả soi kèo bóng đá truoctran trường; Ví dụ: dấu âm trong khoảng thời gian'-1 2:03:04'Áp dụng cho cả hai soi kèo bóng đá truoctran và giờ/phút/phần thứ hai.POSTGRESQLCho phép soi kèo bóng đá truoctran trường có soi kèo bóng đá truoctran dấu hiệu khác nhau và theo truyền thống đối xử với từng trường trong biểu diễn văn bản là ký tên độc lập, do đó phần giờ/phút/phần thứ hai được coi là tích cực trong ví dụ này. Nếu nhưIntervalStyleđược đặt thànhSQL_STANDARDSau đó, một dấu hiệu hàng đầu được coi là áp dụng cho tất cả soi kèo bóng đá truoctran trường (nhưng chỉ khi không có dấu hiệu bổ sung nào xuất hiện). Nếu không thì truyền thốngPostgreSQLGiải thích được sử dụng. Để tránh sự mơ hồ, nên đính kèm một dấu rõ ràng vào từng trường nếu bất kỳ trường nào là âm.

Giá trị trường có thể có soi kèo bóng đá truoctran phần phân số: Ví dụ:'1,5 tuần'hoặc'01: 02: 03,45 '. Tuy nhiên, vì khoảng thời gian lưu trữ nội bộ chỉ có ba đơn vị số nguyên (tháng, soi kèo bóng đá truoctran, micro giây), các đơn vị phân số phải được đổ vào các đơn vị nhỏ hơn.'1,5 năm'trở thành'1 năm 6 Mons'. Các phần phân số của tuần và soi kèo bóng đá truoctran được tính toán là một số nguyên của soi kèo bóng đá truoctran và micro giây, giả sử 30 soi kèo bóng đá truoctran mỗi tháng và 24 giờ mỗi soi kèo bóng đá truoctran, ví dụ:'1,75 tháng'trở thành1 Thứ Hai 22 soi kèo bóng đá truoctran 12:00:00. Chỉ vài giây sẽ được hiển thị dưới dạng phân đoạn trên đầu ra.

Bảng 8-17Hiển thị một số ví dụ về hợp lệKhoảngĐầu vào.

Bảng 8-17. Đầu vào khoảng

Ví dụ Mô tả
1-2 Định dạng tiêu chuẩn SQL: 1 năm 2 tháng
3 4:05:06 Định dạng tiêu chuẩn SQL: 3 soi kèo bóng đá truoctran 4 giờ 5 phút 6 giây
1 năm 2 tháng 3 soi kèo bóng đá truoctran 4 giờ 5 phút 6 giây Định dạng Postgres truyền thống: 1 năm 2 tháng 3 soi kèo bóng đá truoctran 4 giờ 5 phút 6 giây
P1Y2M3DT4H5M6S ISO 8601"Định dạng với người thiết kế": Ý nghĩa tương tự như trên
P0001-02-03T04: 05: 06 ISO 8601"Định dạng thay thế": Ý nghĩa tương tự như trên

Nội bộKhoảngGiá trị được lưu trữ dưới dạng tháng, soi kèo bóng đá truoctran và micro giây. Điều này được thực hiện vì số soi kèo bóng đá truoctran trong một tháng thay đổi và một soi kèo bóng đá truoctran có thể có 23 hoặc 25 giờ nếu có liên quan đến thời gian tiết kiệm ánh sáng ban soi kèo bóng đá truoctran.Timestamptrừ, phương pháp lưu trữ này hoạt động tốt trong hầu hết soi kèo bóng đá truoctran trường hợp, nhưng có thể gây ra kết quả bất ngờ:

Chọn trích xuất (giờ từ '80 phút ':: khoảng);

Chức năngJustify_DaysJustify_HoursCó sẵn để điều chỉnh soi kèo bóng đá truoctran và giờ tràn ra phạm vi bình thường của chúng.

8.5.5. Đầu ra khoảng

Định dạng đầu ra của loại khoảng thời soi kèo bóng đá truoctran có thể được đặt thành một trong bốn kiểuSQL_STANDARD,Postgres,Postgres_verbosehoặcISO_8601, Sử dụng lệnhĐặt khoảng thời soi kèo bóng đá truoctran. Mặc định làPostgresĐịnh dạng.Bảng 8-18Hiển thị soi kèo bóng đá truoctran ví dụ về từng kiểu đầu ra.

TheSQL_STANDARDKiểu tạo ra đầu ra phù hợp với đặc tả tiêu chuẩn của SQL cho các chuỗi theo nghĩa đen, nếu giá trị khoảng đáp ứng các hạn chế của tiêu chuẩn (chỉ chỉ trong một tháng hoặc chỉ trong thời gian ban soi kèo bóng đá truoctran, không có sự pha trộn các thành phần tích cực và tiêu cực). Mặt khác, đầu ra trông giống như một chuỗi theo nghĩa đen trong tháng tiêu chuẩn, sau đó là một chuỗi theo nghĩa đen ban soi kèo bóng đá truoctran, với các dấu hiệu rõ ràng được thêm vào để phân loại các khoảng thời gian ký tên hỗn hợp.

Đầu ra củaPostgresKiểu khớp với đầu ra củaPOSTGRESQLphát hành trước 8.4 khiDatestyletham số được đặt thànhISO.

Đầu ra củapostgres_verboseKiểu khớp với đầu ra củaPostgreSQLphát hành trước 8.4 khiDatestyletham số được đặt thành khôngISOOUTPUT.

Đầu ra củaISO_8601Kiểu khớp với"Định dạng với người thiết kế"được mô tả trong phần 4.4.3.2 của tiêu chuẩn ISO 8601.

Bảng 8-18. Ví dụ kiểu đầu ra khoảng thời soi kèo bóng đá truoctran

Đặc tả kiểu Khoảng thời soi kèo bóng đá truoctran năm Khoảng thời gian ban soi kèo bóng đá truoctran Khoảng thời soi kèo bóng đá truoctran hỗn hợp
SQL_STANDARD 1-2 3 4:05:06 -1-2 +3 -4: 05: 06
Postgres 1 năm 2 Mons 3 soi kèo bóng đá truoctran 04:05:06 -1 năm -2 Mons +3 soi kèo bóng đá truoctran -04: 05: 06
Postgres_verbose @ 1 năm 2 Mons @ 3 soi kèo bóng đá truoctran 4 giờ 5 phút 6 giây @ 1 năm 2 Mons -3 soi kèo bóng đá truoctran 4 giờ 5 phút 6 giây trước
ISO_8601 P1Y2M P3DT4H5M6S P-1Y-2M3DT-4H-5M-6S