Files
api-btekno/migrations/002_create_hourly_summary.sql

20 lines
901 B
MySQL
Raw Normal View History

-- Migration: Create hourly_summary table
-- Description: Rekap per jam untuk kebutuhan grafik dashboard
-- Date: 2024-12-28
CREATE TABLE IF NOT EXISTS hourly_summary (
summary_date DATE NOT NULL,
summary_hour TINYINT UNSIGNED NOT NULL COMMENT '0-23',
location_code VARCHAR(64) NOT NULL,
gate_code VARCHAR(64) NOT NULL,
category VARCHAR(64) NOT NULL,
total_count INT UNSIGNED NOT NULL DEFAULT 0,
total_amount BIGINT UNSIGNED NOT NULL DEFAULT 0,
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (summary_date, summary_hour, location_code, gate_code, category),
INDEX idx_summary_date_location (summary_date, location_code),
INDEX idx_summary_date_hour (summary_date, summary_hour)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;