Tôi hiện đang cố gắng tìm ra cách tốt nhất để lưu trữ giờ hoạt động của doanh nghiệp trong cơ sở dữ liệu.
Ví dụ:
Doanh nghiệp A có số giờ hoạt động sau
- Thứ Hai: 9 giờ sáng - 5 giờ chiều
- Thứ 3: 9 giờ sáng - 5 giờ chiều
- Thứ 4: 9 giờ sáng - 5 giờ chiều
- Thứ 5: 9 giờ sáng - 5 giờ chiều
- Thứ sáu: 9 giờ sáng - 5 giờ chiều
- Thứ Bảy: 9 giờ sáng - 12 giờ trưa
- Chủ nhật: Đóng cửa
Hiện tại, tôi có một mô hình dữ liệu tương tự như sau
CREATE TABLE "business_hours" (
"id" integer NOT NULL PRIMARY KEY,
"day" varchar(16) NOT NULL,
"open_time" time,
"close_time" time
)
trong đó "ngày" được giới hạn trong sự lựa chọn của 7 ngày trong tuần trong mã (thông qua ORM). Để kiểm tra xem một doanh nghiệp có đóng cửa vào một ngày nhất định hay không, nó sẽ kiểm tra xem open_time và close_time là NULL. Nó liên quan đến doanh nghiệp thông qua một bảng trung gian (Mối quan hệ Nhiều Đến Nhiều).
Có ai có bất kỳ đề xuất cho chương trình cơ sở dữ liệu này? Có điều gì đó về nó dường như không đúng với tôi.