Phiên bản được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / 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 các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

9.9. Chức năng tỷ lệ kèo bóng đá/giờ và Người vận hành

Bảng 9-28Hiển thị các chức năng có sẵn để xử lý giá trị tỷ lệ kèo bóng đá/thời gian, với các chi tiết xuất hiện trong các tiểu mục sau.Bảng 9-27Minh họa các hành vi của các toán tử số học cơ bản (+, *, v.v.). Để biết các chức năng định dạng, tham khảoPhần 9.8. Bạn nên được Làm quen với thông tin cơ bản về các loại dữ liệu tỷ lệ kèo bóng đá/giờ từPhần 8.5.

12031_12093tỷ lệ kèo bóng đáhoặcDấu tỷ lệ kèo bóng đáĐầu vào thực sự có hai biến thể: một biến thểtỷ lệ kèo bóng đá với múi giờhoặcdấu tỷ lệ kèo bóng đá Với múi giờ, và một cái màtỷ lệ kèo bóng đá không có múi giờhoặcDấu tỷ lệ kèo bóng đá không có tỷ lệ kèo bóng đá vùng. Đối với sự ngắn gọn, các biến thể này không được hiển thị riêng. Ngoài ra,+*Các nhà khai thác đi theo cặp giao hoán (ví dụ: cả tỷ lệ kèo bóng đá + số nguyên và số nguyên + tỷ lệ kèo bóng đá); Chúng tôi chỉ hiển thị một trong mỗi cặp như vậy.

Bảng 9-27. Toán tử tỷ lệ kèo bóng đá/giờ

Nhà điều hành Ví dụ Kết quả
+ tỷ lệ kèo bóng đá '2001-09-28' + Số nguyên '7' tỷ lệ kèo bóng đá '2001-10-05'
+ tỷ lệ kèo bóng đá '2001-09-28' + Interval '1 giờ' Timestamp '2001-09-28 01:00:00 '
+ tỷ lệ kèo bóng đá '2001-09-28' + Thời gian '03: 00 ' Timestamp '2001-09-28 03:00:00 '
+ Khoảng '1 tỷ lệ kèo bóng đá' + Khoảng '1 giờ' khoảng thời gian '1 tỷ lệ kèo bóng đá 01:00:00 '
+ Timestamp '2001-09-28 01:00' + khoảng tỷ lệ kèo bóng đá '23 giờ ' Timestamp '2001-09-29 00:00:00 '
+ tỷ lệ kèo bóng đá '01: 00 ' + Khoảng' 3 giờ' tỷ lệ kèo bóng đá '04: 00: 00 '
- - khoảng '23 giờ ' Khoảng '-23: 00: 00'
- 14851_14900 Số nguyên '3'(tỷ lệ kèo bóng đá)
- tỷ lệ kèo bóng đá '2001-10-01'-Số nguyên '7' tỷ lệ kèo bóng đá '2001-09-24'
- tỷ lệ kèo bóng đá '2001-09-28'-Khoảng '1 giờ' Timestamp '2001-09-27 23:00:00 '
- tỷ lệ kèo bóng đá '05: 00 ' - tỷ lệ kèo bóng đá '03: 00 ' Khoảng '02: 00: 00 '
- tỷ lệ kèo bóng đá '05: 00 ' - Khoảng' 2 giờ' tỷ lệ kèo bóng đá '03: 00: 00 '
- Timestamp '2001-09-28 23:00'- khoảng tỷ lệ kèo bóng đá '23 giờ ' Timestamp '2001-09-28 00:00:00 '
- Khoảng '1 tỷ lệ kèo bóng đá' - Khoảng '1 giờ' khoảng thời gian '1 tỷ lệ kèo bóng đá -01: ​​00: 00 '
- Timestamp '2001-09-29 03:00'- Dấu tỷ lệ kèo bóng đá '2001-09-27 12:00' khoảng thời gian '1 tỷ lệ kèo bóng đá 15:00:00 '
* 900 * Khoảng '1 thứ hai' Khoảng '00: 15: 00 '
* 21 * Khoảng '1 tỷ lệ kèo bóng đá' Khoảng '21 tỷ lệ kèo bóng đá '
* độ chính xác gấp đôi '3,5' * '1 giờ' Interval '03: 30: 00 '
/ Khoảng '1 giờ' / Double Độ chính xác '1.5' Khoảng '00: 40: 00 '

Bảng 9-28. Chức năng tỷ lệ kèo bóng đá/giờ

chức năng Loại trả lại Mô tả Ví dụ result
Tuổi (dấu tỷ lệ kèo bóng đá, Dấu tỷ lệ kèo bóng đá) Khoảng Trừ đối số, tạo ra một"Biểu tượng"Kết quả sử dụng nhiều năm và Tháng Age (Timestamp '2001-04-10', Dấu tỷ lệ kèo bóng đá '1957-06-13') 43 năm 9 Mons 27 tỷ lệ kèo bóng đá
Age (Dấu tỷ lệ kèo bóng đá) Khoảng Trừ từcurrent_date(lúc nửa đêm) Tuổi (dấu tỷ lệ kèo bóng đá '1957-06-13') 43 năm 8 Mons 3 tỷ lệ kèo bóng đá
clock_timestamp () dấu tỷ lệ kèo bóng đá với múi giờ tỷ lệ kèo bóng đá và giờ hiện tại (thay đổi trong quá trình tuyên bố thực thi); nhìn thấyPhần 9.9.4
current_date tỷ lệ kèo bóng đá tỷ lệ kèo bóng đá hiện tại; nhìn thấyPhần 9.9.4
current_time tỷ lệ kèo bóng đá với múi giờ Thời gian hiện tại trong tỷ lệ kèo bóng đá; nhìn thấyPhần 9.9.4
current_timestamp dấu tỷ lệ kèo bóng đá với múi giờ tỷ lệ kèo bóng đá và giờ hiện tại (bắt đầu giao dịch hiện tại); nhìn thấyPhần 9.9.4
date_part (Text, Dấu tỷ lệ kèo bóng đá) Double Precision Nhận trường con (tương đương với21103_21112); nhìn thấyPhần 9.9.1 date_part ('giờ', dấu tỷ lệ kèo bóng đá '2001/02-16 20:38:40') 20
date_part (Text, Khoảng) Double Precision Nhận trường con (tương đương vớiTrích xuất); nhìn thấyPhần 9.9.1 date_part ('tháng', khoảng '2 năm 3 tháng ') 3
date_trunc (Text, Dấu tỷ lệ kèo bóng đá) dấu tỷ lệ kèo bóng đá Cắt ngắn để chính xác được chỉ định; Xem thêmPhần 9.9.2 ​​date_trunc ('giờ', dấu tỷ lệ kèo bóng đá '2001/02-16 20:38:40') 2001-02-16 20:00:00
Trích xuất(trườngtừTimestamp) Độ chính xác gấp đôi Nhận trường con; nhìn thấyPhần 9.9.1 Trích xuất (giờ từ dấu tỷ lệ kèo bóng đá '2001/02-16 20:38:40') 20
Trích xuất(trườngtừKhoảng tỷ lệ kèo bóng đá) Double Precision Nhận trường con; nhìn thấyPhần 9.9.1 Trích xuất (tháng từ khoảng '2 năm 3 tháng ') 3
isfinite (tỷ lệ kèo bóng đá) Boolean Kiểm tra tỷ lệ kèo bóng đá hữu hạn (không phải +/- vô cực) isfinite (tỷ lệ kèo bóng đá '2001-02-16') TRUE
isfinite (dấu tỷ lệ kèo bóng đá) Boolean Kiểm tra tem tỷ lệ kèo bóng đá hữu hạn (không phải +/- infinity) isfinite (Timestamp '2001-02-16 21:28:30 ') TRUE
isfinite (Khoảng) Boolean Kiểm tra khoảng tỷ lệ kèo bóng đá hữu hạn isfinite (khoảng '4 giờ') TRUE
Justify_days (Khoảng) Khoảng Điều chỉnh khoảng thời gian 30 tỷ lệ kèo bóng đá là được đại diện là tháng Justify_days (Interval '35 tỷ lệ kèo bóng đá ') 1 Mon 5 tỷ lệ kèo bóng đá
Justify_Hours (Khoảng) Khoảng Điều chỉnh khoảng thời gian 24 giờ là được đại diện là tỷ lệ kèo bóng đá 25728_25774 1 tỷ lệ kèo bóng đá 03:00:00
Justify_interval (Khoảng) 26048_26058 Điều chỉnh khoảng tỷ lệ kèo bóng đá sử dụngJustify_DaysJustify_Hours, với dấu hiệu bổ sung Điều chỉnh Justify_Interval (Interval '1 mon -1 giờ ') 29 tỷ lệ kèo bóng đá 23:00:00
địa phương tỷ lệ kèo bóng đá Thời gian hiện tại trong tỷ lệ kèo bóng đá; nhìn thấyPhần 9.9.4
LocalTimeStamp Dấu tỷ lệ kèo bóng đá tỷ lệ kèo bóng đá và giờ hiện tại (bắt đầu giao dịch hiện tại); nhìn thấyPhần 9.9.4
Bây giờ () dấu tỷ lệ kèo bóng đá với múi giờ tỷ lệ kèo bóng đá và giờ hiện tại (bắt đầu giao dịch hiện tại); nhìn thấyPhần 9.9.4
statement_timestamp () dấu tỷ lệ kèo bóng đá với múi giờ tỷ lệ kèo bóng đá và giờ hiện tại (bắt đầu tuyên bố hiện tại); nhìn thấyPhần 9.9.4
timeofday () Text tỷ lệ kèo bóng đá và giờ hiện tại (nhưclock_timestamp28358_28371Textchuỗi); nhìn thấyPhần 9.9.4
Giao dịch_timestamp () dấu tỷ lệ kèo bóng đá với múi giờ tỷ lệ kèo bóng đá và giờ hiện tại (bắt đầu giao dịch hiện tại); nhìn thấyPhần 9.9.4

29082_29124chồng chéo29158_29183

(START1, end1) Overlaps (29329_29337, end2)
(start1, LEGN1) Overlaps (START2, LEGN2)

Biểu thức này mang lại sự thật khi hai khoảng thời gian (được xác định bởi điểm cuối của chúng) chồng chéo, sai khi chúng không chồng chéo. Các Điểm cuối có thể được chỉ định là cặp tỷ lệ kèo bóng đá, thời gian hoặc thời gian tem; hoặc như một tỷ lệ kèo bóng đá, thời gian hoặc tem thời gian sau đó là một khoảng thời gian. Khi một cặp giá trị được cung cấp, bắt đầu hoặc phần cuối có thể được viết trước;chồng chéoTự động lấy giá trị trước đó của cặp khi bắt đầu. Mỗi khoảng tỷ lệ kèo bóng đá được coi là đại diện cho nửa mở khoảngBắt đầu <= tỷ lệ kèo bóng đá < kết thúc, trừ khiBắt đầukết thúcbằng nhau trong trường hợp nó đại diện cho tỷ lệ kèo bóng đá duy nhất đó ngay lập tức. Điều này có nghĩa là hai lần Các khoảng tỷ lệ kèo bóng đá chỉ có điểm cuối chung không trùng nhau.

Chọn (tỷ lệ kèo bóng đá '2001-02-16', tỷ lệ kèo bóng đá '2001-12-21')
       (tỷ lệ kèo bóng đá '2001-10-30', tỷ lệ kèo bóng đá '2002-10-30');Kết quả:TRUEChọn (tỷ lệ kèo bóng đá '2001-02-16', khoảng thời gian '100 tỷ lệ kèo bóng đá')
       (tỷ lệ kèo bóng đá '2001-10-30', tỷ lệ kèo bóng đá '2002-10-30');Kết quả:SaiChọn (tỷ lệ kèo bóng đá '2001-10-29', tỷ lệ kèo bóng đá '2001-10-30')
       (tỷ lệ kèo bóng đá '2001-10-30', tỷ lệ kèo bóng đá '2001-10-31');Kết quả:SaiChọn (tỷ lệ kèo bóng đá '2001-10-30', tỷ lệ kèo bóng đá '2001-10-30')
       (tỷ lệ kèo bóng đá '2001-10-30', tỷ lệ kèo bóng đá '2001-10-31');Kết quả:TRUE

Khi thêm mộtKhoảngGiá trị thành (hoặc Trừ mộtKhoảngGiá trị từ) Adấu tỷ lệ kèo bóng đá với múi giờGiá trị, tỷ lệ kèo bóng đá các tiến bộ thành phần (hoặc giảm) tỷ lệ kèo bóng đá củadấu tỷ lệ kèo bóng đá với múi giờTheo số lượng được chỉ định của tỷ lệ kèo bóng đá. Trong thời gian tiết kiệm ánh sáng ban tỷ lệ kèo bóng đá thay đổi (với thời gian phiên Vùng được đặt thành múi giờ nhận ra DST), điều này có nghĩa làKhoảng '1 tỷ lệ kèo bóng đá'Không nhất thiết bình đẳngKhoảng '24 giờ '. Ví dụ, với múi giờ phiên được đặt thànhCST7CDT, dấu thời gian theo thời gian Vùng '2005-04-02 12: 00-07' + khoảng '1 tỷ lệ kèo bóng đá'sẽ sản xuấtdấu tỷ lệ kèo bóng đá với múi giờ '2005-04-03 12: 00-06 ', trong khi thêmInterval '24 giờ'với cùng một ban đầudấu tỷ lệ kèo bóng đá với múi giờsản xuấtdấu tỷ lệ kèo bóng đá theo tỷ lệ kèo bóng đá Vùng '2005-04-03 13: 00-06', vì có sự thay đổi trong ánh sáng ban tỷ lệ kèo bóng đá Tiết kiệm thời gian tại2005-04-03 02:00Trong tỷ lệ kèo bóng đá vùngCST7CDT.

Lưu ý Có thể có sự mơ hồ trongthángĐược trả về bởiAgeBởi vì các tháng khác nhau có sự khác biệt số tỷ lệ kèo bóng đá.PostgreSQL's Cách tiếp cận sử dụng tháng từ trước đó của hai tỷ lệ kèo bóng đá khi tính toán một phần tháng. Ví dụ,Age ('2004-06-01', '2004-04-30')Sử dụng tháng tư đến năng suất1 mon 1 tỷ lệ kèo bóng đá, trong khi sử dụng May sẽ năng suất1 Thứ Hai 2 tỷ lệ kèo bóng đáVì có thể có 31 tỷ lệ kèo bóng đá, trong khi tháng Tư chỉ có 30.

9.9.1.Trích xuất, date_part

Trích xuất (trườngtừNguồn)

TheTrích xuấtHàm lấy Các trường con như năm hoặc giờ kể từ tỷ lệ kèo bóng đá/giá trị thời gian.Nguồnphải là một giá trị Biểu thức của loạiTimestamp, tỷ lệ kèo bóng đáhoặcKhoảng. (Biểu thức của loạitỷ lệ kèo bóng đáđược đúc thànhTimestampvà do đó có thể được sử dụng làm Tốt.)trườnglà một định danh hoặc chuỗi chọn trường nào để trích xuất từ ​​nguồn giá trị. TheTrích xuấtHàm Trả về các giá trị của loạiDouble Precision. Sau đây là tên trường hợp lệ:

Century

Thế kỷ

Chọn trích xuất (thế kỷ từ dấu tỷ lệ kèo bóng đá '2000-12-16 12:21:13');Kết quả:20Chọn trích xuất (thế kỷ từ dấu tỷ lệ kèo bóng đá '2001-02-16 20:38:40');Kết quả:21

Thế kỷ đầu tiên bắt đầu tại 0001-01-01 00:00:00 AD, Mặc dù họ không biết điều đó vào thời điểm đó. Cái này Định nghĩa áp dụng cho tất cả các quốc gia lịch Gregorian. Không có thế kỷ số 0, bạn đi từ -1 thế kỷ đến 1 thế kỷ. Nếu bạn không đồng ý với điều này, vui lòng viết Khiếu nại: Giáo hoàng, Nhà thờ Saint-Peter của Roma, Vatican.

PostgreSQLPhát hành trước 8,0 không tuân theo số lượng thông thường của hàng thế kỷ, nhưng vừa trở lại trường năm chia cho 100.

tỷ lệ kèo bóng đá

choDấu tỷ lệ kèo bóng đáGiá trị, tỷ lệ kèo bóng đá (của tháng) trường (1 - 31); vìKhoảngGiá trị, số tỷ lệ kèo bóng đá

Chọn trích xuất (tỷ lệ kèo bóng đá từ dấu thời gian '2001-02-16 20:38:40');Kết quả:16Chọn trích xuất (tỷ lệ kèo bóng đá từ khoảng '40 tỷ lệ kèo bóng đá 1 phút ');Kết quả:40
Decade

Trường năm chia cho 10

Chọn trích xuất (thập kỷ từ dấu tỷ lệ kèo bóng đá '2001-02-16 20:38:40');Kết quả:200
Dow

tỷ lệ kèo bóng đá trong tuần là Chủ nhật (0) đến thứ bảy (6)

Chọn Trích xuất (Dow từ Timestamp '2001-02-16 20:38:40');Kết quả:5

Lưu ý rằngTrích xuấts tỷ lệ kèo bóng đá số trong tuần khác nhau so vớito_char (..., 'd')chức năng.

doy

tỷ lệ kèo bóng đá trong năm (1 - 365/366)

Chọn trích xuất (doy từ Timestamp '2001-02-16 20:38:40');Kết quả:47
Epoch

cho37108_37114Dấu tỷ lệ kèo bóng đáGiá trị, số giây kể từ đó 1970-01-01 00:00:00 UTC (có thể là âm); vìKhoảngGiá trị, tổng số giây Trong khoảng

Chọn trích xuất (kỷ nguyên từ dấu tỷ lệ kèo bóng đá với múi giờ '2001-02-16 20: 38: 40.12-08');result:982384720.12Chọn trích xuất (kỷ nguyên từ khoảng '5 tỷ lệ kèo bóng đá 3 giờ');Kết quả:442800

Đây là cách bạn có thể chuyển đổi giá trị kỷ nguyên trở lại dấu tỷ lệ kèo bóng đá:

Chọn dấu tỷ lệ kèo bóng đá với múi giờ 'Epoch' + 982384720.12 * Interval '1 giây';

(Theto_timestampChức năng đóng gói chuyển đổi ở trên.)

giờ

Trường giờ (0 - 23)

38187_38249Kết quả:20
isodow

tỷ lệ kèo bóng đá trong tuần là Thứ Hai (1) đến Chủ nhật (7)

Chọn trích xuất (Isodow từ Timestamp '2001-02-18 20:38:40');Kết quả:7

Điều này giống hệt vớiDowNgoại trừ Chủ nhật. Điều này phù hợp vớiISO8601 tỷ lệ kèo bóng đá trong tuần đánh số.

ISOYEAR

TheISO8601 năm số tuần mà tỷ lệ kèo bóng đá rơi vào (không áp dụng cho các khoảng thời gian)

Chọn trích xuất (Isoyear từ tỷ lệ kèo bóng đá '2006-01-01');Kết quả:2005Chọn Trích xuất (Isoyear từ tỷ lệ kèo bóng đá '2006-01-02');Kết quả:2006

mỗiISO8601 Năm số tuần bắt đầu với thứ Hai của tuần chứa tỷ lệ kèo bóng đá 4 tháng 1, vì vậy vào đầu tháng 1 hoặc Cuối tháng 12ISONăm có thể khác với năm Gregorian. XemTuầnTrường để biết thêm thông tin.

Trường này không có sẵn trong các bản phát hành PostgreSQL Trước 8.3.

micro giây

Trường thứ hai, bao gồm các bộ phận phân số, nhân với 1 000 000; Lưu ý rằng điều này bao gồm đầy đủ giây

Chọn trích xuất (micro giây từ tỷ lệ kèo bóng đá '17: 12: 28.5 ');Kết quả:28500000
Thiên niên kỷ

Thiên niên kỷ

Chọn Trích xuất (Thiên niên kỷ từ Timestamp '2001-02-16 20:38:40');Kết quả:3

Năm trong những năm 1900 trong thiên niên kỷ thứ hai. Các Thiên niên kỷ thứ ba bắt đầu từ tỷ lệ kèo bóng đá 1 tháng 1 năm 2001.

PostgreSQLPhát hành trước 8,0 không tuân theo số lượng thông thường của thiên niên kỷ, nhưng vừa trở lại trường năm chia cho 1000.

Milliseconds

Trường thứ hai, bao gồm các bộ phận phân số, được nhân với 1000. Lưu ý rằng điều này bao gồm đầy đủ giây.

Chọn trích xuất (mili giây từ tỷ lệ kèo bóng đá '17: 12: 28.5 ');Kết quả:28500
phút

trường Biên bản (0 - 59)

Chọn Trích xuất (Phút từ Timestamp '2001-02-16 20:38:40');Kết quả:38
tháng

choTimestampGiá trị, số của tháng trong năm (1 - 12); vìKhoảngGiá trị, số tháng, modulo 12 (0 - 11)

Chọn trích xuất (tháng từ Timestamp '2001-02-16 20:38:40');Kết quả:2Chọn trích xuất (tháng từ khoảng '2 năm 3 tháng');Kết quả:3Chọn trích xuất (tháng từ khoảng '2 năm 13 tháng');Kết quả:1
quý

phần tư của năm (1 - 4) tỷ lệ kèo bóng đá đó là tỷ lệ kèo bóng đá TRONG

Chọn trích xuất (quý từ Timestamp '2001-02-16 20:38:40');Kết quả:1
thứ hai

Trường thứ hai, bao gồm các phần phân số (0 - 0 - 59[1])

Chọn trích xuất (thứ hai từ dấu tỷ lệ kèo bóng đá '2001-02-16 20:38:40');Kết quả:40Chọn trích xuất (thứ hai theo tỷ lệ kèo bóng đá '17: 12: 28.5 ');Kết quả:28.5
timezone

Múi giờ bù từ UTC, được đo bằng giây. Các giá trị dương tương ứng với các múi giờ ở phía đông UTC, Giá trị âm đối với các khu vực phía tây UTC. (Về mặt kỹ thuật,POSTGRESQLsử dụngUT1Vì bước nhảy giây không được xử lý.)

timezone_hour

Thành phần giờ của múi giờ bù

timezone_minute

Thành phần phút của phần bù múi giờ

tuần

Số lượng củaISO8601 Tuần số tuần của năm. Theo định nghĩa, ISO tuần bắt đầu vào thứ Hai và Tuần đầu tiên của một năm chứa tỷ lệ kèo bóng đá 4 tháng 1 năm đó. TRONG Những từ khác, thứ Năm đầu tiên của một năm là vào tuần 1 của năm đó.

Trong hệ thống đánh giá tuần ISO, có thể cho tỷ lệ kèo bóng đá đầu tháng 1 là một phần của tuần thứ 52 hoặc 53 của năm trước, và vào cuối tháng 12 Một phần của tuần đầu tiên của năm sau. Ví dụ,2005-01-01là một phần của thứ 53 Tuần của năm 2004 và2006-01-01là một phần của tuần thứ 52 của năm 2005, trong khi2012-12-31IS một phần của tuần đầu tiên của năm 2013. Nên sử dụng TheISOYEARtrường cùng vớituầnĐể có được sự nhất quán kết quả.

Chọn Trích xuất (Tuần từ Timestamp '2001-02-16 20:38:40');Kết quả:7
năm

Trường năm. Hãy nhớ rằng không có0 AD, Vì vậy, trừBCnăm từADNăm nên được thực hiện một cách cẩn thận.

Chọn trích xuất (năm từ Timestamp '2001-02-16 20:38:40');Kết quả:2001

TheTrích xuất45952_46073Phần 9.8.

Thedate_partHàm là được mô hình hóa trên truyền thốngingrestương đương vớiSQL-Standard Chức năngTrích xuất:

date_part ('46466_46473',Nguồn)

Lưu ý rằng ở đâytrườngTham số cần phải là một giá trị chuỗi, không phải là một tên. Hợp lệ Tên trường chodate_partlà Tương tự như choTrích xuất.

Chọn Date_Part ('Day', Timestamp '2001-02-16 20:38:40');Kết quả:16Chọn Date_Part ('Giờ', Khoảng '4 giờ 3 phút');47027_470374

9.9.2.date_trunc

hàmdate_truncIS về mặt khái niệm tương tự nhưTrunchàm cho số.

date_trunc ('trường',Nguồn)

Nguồn47607_47644TimestamphoặcKhoảng. (Giá trị loạitỷ lệ kèo bóng đátỷ lệ kèo bóng đáđược đúc tự động đếnTimestamphoặcKhoảng, tương ứng.)trườngChọn chính xác nào để Cắt ngắn giá trị đầu vào. Giá trị trả về loạiTimestamphoặcKhoảngVới tất cả các trường ít quan trọng hơn hơn một bộ được chọn thành 0 (hoặc một, cho tỷ lệ kèo bóng đá và tháng).

Giá trị hợp lệ chotrườnglà:

micro giây
​​Milliseconds
thứ hai
phút
giờ
tỷ lệ kèo bóng đá
tuần
tháng
quý
năm
Decade
Century
Thiên niên kỷ

Ví dụ:

Chọn DATE_TRUNC ('Giờ', Timestamp '2001-02-16 20:38:40');Kết quả:2001-02-16 20:00:00Chọn DATE_TRUNC ('Năm', Timestamp '2001-02-16 20:38:40');Kết quả:2001-01-01 00:00:00

9.9.3.AT Múi giờ

Thetại múi giờXây dựng cho phép Chuyển đổi tem tỷ lệ kèo bóng đá sang các múi giờ khác nhau.Bảng 9-29Hiển thị các biến thể của nó.

Bảng 9-29.Tại thời điểm VÙNGBiến thể

Biểu thức Loại trả lại Mô tả
dấu tỷ lệ kèo bóng đá không có múi giờTại múi giờkhu vực dấu tỷ lệ kèo bóng đá với múi giờ Điều trị tem tỷ lệ kèo bóng đáKhông có múi giờ51073_51125
dấu tỷ lệ kèo bóng đá với múi giờTại múi giờkhu vực Dấu tỷ lệ kèo bóng đá không có tỷ lệ kèo bóng đá vùng Chuyển đổi tem tỷ lệ kèo bóng đá đã chovới múi giờđến mới múi giờ, không có múi giờ chỉ định
tỷ lệ kèo bóng đá theo tỷ lệ kèo bóng đá vùng51715_51731khu vực tỷ lệ kèo bóng đá với múi giờ Chuyển đổi tỷ lệ kèo bóng đá đã chovới múi giờđến mới múi giờ

Trong các biểu thức này, múi giờ mong muốnkhu vựccó thể được chỉ định dưới dạng văn bản Chuỗi (ví dụ:'PST') hoặc như một khoảng tỷ lệ kèo bóng đá (ví dụ.,Interval '-08: 00'). Trong văn bản trường hợp, tên múi giờ có thể được chỉ định theo bất kỳ cách nào được mô tả trongPhần 8.5.3.

ví dụ (giả sử múi giờ địa phương làPST8PDT):

Chọn dấu tỷ lệ kèo bóng đá '2001-02-16 20:38:40' tại múi giờ 'MST';Kết quả:2001-02-16 19:38:40-08Chọn dấu tỷ lệ kèo bóng đá với múi giờ '2001-02-16 20: 38: 40-05' tại múi giờ 'MST';Kết quả:2001-02-16 18:38:40

Ví dụ đầu tiên mất dấu tỷ lệ kèo bóng đá không có múi giờ và diễn giải nó là MST Time (UTC-7), sau đó được chuyển đổi thành PST (UTC-8) để hiển thị. Ví dụ thứ hai mất một dấu tỷ lệ kèo bóng đá được chỉ định trong EST (UTC-5) và chuyển đổi nó thành giờ địa phương trong MST (UTC-7).

hàmtimezone(khu vực, Dấu tỷ lệ kèo bóng đá)tương đương với SQL-Conforming ConstructDấu tỷ lệ kèo bóng đátại múi giờkhu vực.

9.9.4. tỷ lệ kèo bóng đá/giờ hiện tại

POSTGRESQLcung cấp a Số lượng hàm trả về các giá trị liên quan đến hiện tại tỷ lệ kèo bóng đá và thời gian. Các hàm tiêu chuẩn SQL này tất cả các giá trị trả về Dựa trên thời gian bắt đầu của giao dịch hiện tại:

current_date
Current_time
Current_timestamp
Current_time (chính xác)
Current_timestamp (độ chính xác)
Địa phương
LocalTimeStamp
Địa phương (Precision)
LocalTimeStamp (Precision)

current_timecurrent_timestampCung cấp các giá trị theo tỷ lệ kèo bóng đá vùng;địa phươngLocalTimestampCung cấp các giá trị không có tỷ lệ kèo bóng đá vùng.

current_time, current_timestamp, địa phươngLocalTimeStampcó thể tùy ý lấy một tham số chính xác, điều này khiến kết quả được làm tròn để rằng nhiều chữ số phân số trong trường giây. Mà không có a tham số chính xác, kết quả được cung cấp cho toàn bộ độ chính xác.

Một số ví dụ:

Chọn hiện tại_time;result:14:39:53.662522-05Chọn hiện tại_date;Kết quả:2001-12-23Chọn current_timestamp;Kết quả:2001-12-23 14:39:53.662522-05chọn current_timestamp (2);Kết quả:2001-12-23 14:39:53.66-05Chọn LocalTimeStamp;Kết quả:2001-12-23 14:39:53.662522

Vì các chức năng này trở lại tỷ lệ kèo bóng đá bắt đầu của dòng điện Giao dịch, giá trị của họ không thay đổi trong giao dịch. Đây được coi là một tính năng: Mục đích là cho phép một giao dịch để có một khái niệm nhất quán về"Hiện tại"56021_56118

Lưu ý:Các hệ thống cơ sở dữ liệu khác có thể thúc đẩy chúng giá trị thường xuyên hơn.

PostgreSQLcũng cung cấp các chức năng trả về tỷ lệ kèo bóng đá bắt đầu của câu lệnh hiện tại, cũng như tỷ lệ kèo bóng đá hiện tại thực tế tại ngay lập tức chức năng được gọi. Danh sách đầy đủ các chức năng tỷ lệ kèo bóng đá không tiêu chuẩn không SQL là:

Giao dịch_timestamp ()
statement_timestamp ()
clock_timestamp ()
Timeofday ()
Hiện nay()

Giao dịch_timestamp ()IS tương đương vớicurrent_timestamp,, nhưng được đặt tên để phản ánh rõ ràng những gì nó trả về.statement_timestamp ()56948_57099statement_timestamp ()Giao dịch_timestamp ()trở lại cùng một giá trị trong lệnh đầu tiên của một giao dịch, nhưng có thể khác nhau trong các lệnh tiếp theo.clock_timestamp ()Trả về dòng điện thực tế tỷ lệ kèo bóng đá và do đó, giá trị của nó thay đổi ngay cả trong một SQL yêu cầu.Timeofday ()là a lịch sửPOSTGRESQLHàm. Giốngclock_timestamp (),, nó trả về tỷ lệ kèo bóng đá hiện tại thực tế, nhưng là một định dạngTextChuỗi chứ không phảidấu tỷ lệ kèo bóng đá với múi giờGiá trị.Bây giờ ()là truyền thốngPOSTGRESQLtương đương vớiGiao dịch_timestamp ().

Tất cả các loại dữ liệu tỷ lệ kèo bóng đá/giờ cũng chấp nhận theo nghĩa đen đặc biệt giá trịBây giờ58125_58278

Chọn current_timestamp;
Chọn bây giờ ();
Chọn dấu tỷ lệ kèo bóng đá 'bây giờ';  - Không chính xác để sử dụng với mặc định

Tip:Bạn không muốn sử dụng biểu mẫu thứ ba khi Chỉ định Amặc địnhmệnh đề trong khi Tạo một bảng. Hệ thống sẽ chuyển đổiBây giờđến ATimestampnhư ngay khi hằng số được phân tích cú pháp, do đó khi mặc định giá trị là cần thiết, tỷ lệ kèo bóng đá tạo bảng sẽ là đã sử dụng! Hai biểu mẫu đầu tiên sẽ không được đánh giá cho đến khi Giá trị mặc định được sử dụng, vì chúng là các cuộc gọi chức năng. Do đó, họ sẽ đưa ra hành vi mong muốn của việc mặc định tỷ lệ kèo bóng đá chèn hàng.

9.9.5. Trì hoãn thực thi

Hàm sau có sẵn để trì hoãn việc thực hiện Quá trình máy chủ:

pg_s ngủ (giây)

pg_s ngủ59514_59569giâygiây đã trôi qua.giâylà giá trị của loạiDouble Precision, vì vậy sự chậm trễ của phân đoạn có thể được chỉ định. Ví dụ:

Chọn PG_SLEEP (1.5);

Lưu ý:Độ phân giải hiệu quả của giấc ngủ Khoảng tỷ lệ kèo bóng đá là đặc trưng cho nền tảng; 0,01 giây là một phổ biến giá trị. Độ trễ giấc ngủ sẽ ít nhất là dài nhất là chỉ định. Nó có thể dài hơn tùy thuộc vào các yếu tố như tải máy chủ.

cảnh báo

Đảm bảo rằng phiên của bạn không giữ thêm khóa Hơn cần thiết khi gọipg_s ngủ. Nếu không các phiên khác có thể phải chờ quá trình ngủ của bạn, chậm lại xuống toàn bộ hệ thống.

ghi chú

[1]

60 Nếu các giây nhảy được thực hiện bởi hoạt động hệ thống