PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Thêm giờ vào giá trị thời gian trong PostgreSQL

Trong PostgreSQL, chúng ta có thể sử dụng + toán tử để thêm một hoặc nhiều giờ vào 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ể thêm giờ vào một date giá trị hoặc một datetime sự phối hợp.

Ví dụ

Chúng tôi có thể chỉ định khoảng thời gian khi thêm vào ngày và giờ. Ví dụ:chúng ta có thể sử dụng hour hoặc hour để thêm một hoặc nhiều giờ:

SELECT time '08:35' + interval '1 hour';

Kết quả:

09:35:00

Số nhiều

Và ở dạng số nhiều:

SELECT time '08:35' + interval '2 hours';

Kết quả:

10:35:00

Dấu thời gian

Và đây là với timestamp giá trị:

SELECT timestamp '2030-01-20 08:35' + interval '2 hours';

Kết quả:

2030-01-20 10:35:00

Khoảng thời gian

Chúng tôi cũng có thể thêm giờ vào một khoảng thời gian interval :

SELECT interval '23 hours' + interval '2 hours';

Kết quả:

25:00:00

Ngày

Chúng tôi thậm chí có thể thêm giờ vào một date giá trị:

SELECT date '2030-01-20' + interval '3 hours';

Kết quả:

2030-01-20 03:00: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 datetime giá trị cùng nhau và thêm giờ cho điều đó:

SELECT date '2030-01-20' + time '02:35' + interval '3 hours';

Kết quả:

2030-01-20 05:35:00

Được chỉ định trong phút

Một cách khác để làm điều đó là chỉ định số tương đương trong vài phút:

SELECT time '15:45' + interval '60 minutes';

Kết quả:

16:45:00

Khi làm điều này, chúng tôi không cần phải chính xác về giờ. Ví dụ:chúng tôi có thể thêm hơn một giờ, nhưng ít hơn hai giờ:

SELECT time '15:45' + interval '90 minutes';

Kết quả:

17:15: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ố giờ được chỉ định sẽ được trừ cho 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 thêm vào ngày / giờ đầu vào.

Ví dụ:

SELECT time '03:00' - interval '-2 hours';

Kết quả:

05:00:00

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Không thể bắt đầu Postgres

  2. lỗi câu lệnh sql:cột .. không tồn tại

  3. Truyền kiểu NULL khi cập nhật nhiều hàng

  4. Cách khai báo một biến trong truy vấn PostgreSQL

  5. PostgreSQL khác gì với MySQL?