Trong PostgreSQL, chúng ta có thể sử dụng -
toán tử để trừ một hoặc nhiều phút cho một giá trị thời gian.
Theo giá trị "thời gian", đây có thể là time
thực tế giá trị, một timestamp
hoặc một interval
. Chúng tôi cũng có thể trừ số phút cho một date
giá trị hoặc một date
và time
sự phối hợp.
Ví dụ
Chúng ta có thể chỉ định khoảng thời gian khi thực hiện số học với ngày và giờ. Vì vậy, để trừ một hoặc nhiều phút, chúng ta có thể sử dụng minute
hoặc minute
:
SELECT time '07:00' - interval '1 minute';
Kết quả:
06:59:00
Số nhiều
Và ở dạng số nhiều:
SELECT time '07:00' - interval '45 minutes';
Kết quả:
06:15:00
Dấu thời gian
Và đây là với timestamp
giá trị:
SELECT timestamp '2030-01-20 09:00' - interval '30 minutes';
Kết quả:
2030-01-20 08:30:00
Khoảng thời gian
Chúng tôi cũng có thể trừ số phút cho khoảng thời gian interval
:
SELECT interval '5 hours' - interval '90 minutes';
Kết quả:
03:30:00
Ngày
Chúng tôi thậm chí có thể trừ số phút cho một date
giá trị:
SELECT date '2030-01-20' - interval '12 minutes';
Kết quả:
2030-01-19 23:48:00
Kết quả là một timestamp
giá trị.
Giá trị Ngày &Giờ được Kết hợp
Chúng tôi cũng có thể thêm date
và time
giá trị cùng nhau và trừ phút từ đó:
SELECT date '2030-01-20' + time '01:00' - interval '18 minutes';
Kết quả:
2030-01-20 00:42:00
Được chỉ định trong vài giây
Theo cách khác, chúng ta có thể trừ số tương đương trong vài giây:
SELECT time '15:45' - interval '120 seconds';
Kết quả:
15:43:00
Được chỉ định trong Giờ
Nếu số phút bị trừ có gia số là 60 phút, chúng ta có thể sử dụng giờ khác:
SELECT time '15:45' - interval '1 hour';
Kết quả:
14:45:00
Giá trị phủ định
Có thể thực hiện số học ngày với các giá trị âm. Nếu chúng tôi sử dụng giá trị âm với -
toán tử, sau đó số phút được chỉ định sẽ được thêm vào ngày / giờ đầu vào. Nhưng nếu chúng ta sử dụng nó với +
toán tử, sau đó nó sẽ được trừ khỏi ngày / giờ đầu vào.
Ví dụ:
SELECT time '03:00' + interval '-2 minutes';
Kết quả:
02:58:00