So sánh một số kiểu dữ liệu thời gian trong Oracle

Oracle cung cấp nhiều kiểu dữ liệu thời gian khác nhau để lưu trữ thông tin về thời gian và ngày tháng:

ora

  1. DATE:
  • Lưu trữ ngày tháng dưới dạng YYYY-MM-DD.
  • Ví dụ: ‘2023-12-01’.
  • Độ chính xác: 0 ngày.
  1. TIME:
  • Lưu trữ thời gian dưới dạng HH:MM:SS.
  • Ví dụ: ’12:34:56′.
  • Độ chính xác: 0 giây.
  1. TIMESTAMP:
  • Kết hợp DATE và TIME.
  • Lưu trữ ngày tháng và thời gian dưới dạng YYYY-MM-DD HH:MM:SS.
  • Ví dụ: ‘2023-12-01 12:34:56’.
  • Độ chính xác: 0 giây.
  1. TIMESTAMP WITH TIME ZONE:
  • Tương tự như TIMESTAMP nhưng bao gồm cả múi giờ.
  • Ví dụ: ‘2023-12-01 12:34:56 +07:00’.
  • Độ chính xác: 0 giây.
  1. INTERVAL DAY TO SECOND:
  • Lưu trữ khoảng thời gian dưới dạng ngày, giờ, phút và giây.
  • Ví dụ: ‘1 2 3 4’.
  • Độ chính xác: 1 giây.

Bảng so sánh:

Kiểu dữ liệuĐịnh dạngĐộ chính xácMúi giờ
DATEYYYY-MM-DD0 ngàyKhông
TIMEHH:MM:SS0 giâyKhông
TIMESTAMPYYYY-MM-DD HH:MM:SS0 giâyKhông
TIMESTAMP WITH TIME ZONEYYYY-MM-DD HH:MM:SS +07:000 giây
INTERVAL DAY TO SECOND1 2 3 41 giâyKhông

Lựa chọn kiểu dữ liệu phù hợp:

  • Sử dụng DATE để lưu trữ ngày tháng.
  • Sử dụng TIME để lưu trữ thời gian.
  • Sử dụng TIMESTAMP để lưu trữ cả ngày tháng và thời gian.
  • Sử dụng TIMESTAMP WITH TIME ZONE để lưu trữ cả ngày tháng, thời gian và múi giờ.
  • Sử dụng INTERVAL DAY TO SECOND để lưu trữ khoảng thời gian.

Ví dụ:

  • Lưu trữ ngày sinh của khách hàng: DATE.
  • Lưu trữ thời gian mở cửa của cửa hàng: TIME.
  • Lưu trữ thời gian đặt hàng: TIMESTAMP.
  • Lưu trữ thời gian đặt hàng với múi giờ: TIMESTAMP WITH TIME ZONE.
  • Lưu trữ khoảng thời gian giao hàng: INTERVAL DAY TO SECOND.

Lưu ý:

  • Oracle cũng cung cấp một số kiểu dữ liệu thời gian khác, chẳng hạn như TIMESTAMP(6) WITH TIME ZONE.
  • Bạn có thể sử dụng các hàm Oracle để chuyển đổi giữa các kiểu dữ liệu thời gian.

 

Datalinks.vn

Hello các bạn, mình là Dương Nguyễn tác giả của blog này. Với gần 20 năm làm việc trong lĩnh vực CNTT, VT trong và ngoài nước, mong muốn được chia sẻ kiến thức và kinh nghiệm về database với các bạn đam mê và quan tâm đến lĩnh vực này. Đặc biệt là #OracleDatabase hoặc luyện thi #OCP database admin. Các bạn cần người đồng hành thì alo mình nhé. Call/Zalo: 0765 871 888. Thanks you !.....
0 0 đánh giá
Đánh giá bài viết
Theo dõi
Thông báo của
guest

0 Góp ý
Phản hồi nội tuyến
Xem tất cả bình luận