Kiểu dữ liệu TIME trong SQL Server

Kiểu dữ liệu TIME trong SQL Server

Trong hướng dẫn này, bạn sẽ học cách lưu trữ thời gian trong ngày trong cơ sở dữ liệu bằng cách sử dụng kiểu dữ liệu TIME trong SQL Server.

Giới thiệu về kiểu dữ liệu TIME trong SQL Server

Kiểu dữ liệu TIME trong SQL Server xác định thời gian trong ngày dựa trên đồng hồ 24 giờ. Cú pháp của kiểu dữ liệu TIME như sau:

TIME[ (fractional second scale) ]

Phần giây phân số chỉ định số chữ số cho phần phân số của giây. Phần giây phân số nằm trong khoảng từ 0 đến 7. Theo mặc định, phần giây phân số là 7 nếu bạn không chỉ định rõ ràng.

Ví dụ sau minh họa cách tạo bảng với một cột kiểu TIME:

CREATE TABLE table_name(
    ...,
    start_at TIME(0),
    ...
);

Định dạng mặc định cho một giá trị kiểu TIME là:

hh:mm:ss[.nnnnnnn]

Ở định dạng này:

  • hh là hai chữ số đại diện cho giờ với phạm vi từ 0 đến 23.
  • mm là hai chữ số biểu thị phút với phạm vi từ 0 đến 59.
  • ss là hai chữ số đại diện cho giây với phạm vi từ 0 đến 59.
  • Phần giây phân số có thể từ 0 đến 7 chữ số có phạm vi từ 0 đến 9999999.

Giá trị thời gian với độ chính xác phân số giây mặc định là 100ms yêu cầu bộ nhớ 5 byte.

Lưu ý rằng kiểu dữ liệu TIME không thể phân biệt múi giờ.

Ví dụ về kiểu dữ liệu TIME trong SQL Server

Câu lệnh sau tạo một bảng có tên sales.visits với hai cột kiểu TIME ghi lại thời gian ghé thăm của khách hàng đến một cửa hàng cụ thể:

CREATE TABLE sales.visits (
    visit_id INT PRIMARY KEY IDENTITY,
    customer_name VARCHAR (50) NOT NULL,
    phone VARCHAR (25),
    store_id INT NOT NULL,
    visit_on DATE NOT NULL,
    start_at TIME (0) NOT NULL,
    end_at TIME (0) NOT NULL,
    FOREIGN KEY (store_id) REFERENCES sales.stores (store_id)
);

Câu lệnh sau đây INSERT thêm một hàng vào bảng sales.visits:

INSERT INTO sales.visits (
    customer_name,
    phone,
    store_id,
    visit_on,
    start_at,
    end_at
)
VALUES
    (
        'John Doe',
        '(408)-993-3853',
        1,
        '2018-06-23',
        '09:10:00',
        '09:30:00'
    );

Trong hướng dẫn này, bạn đã học cách sử dụng kiểu dữ liệu TIME trong SQL Server để lưu trữ các giá trị thời gian trong bảng.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *