Files
tam3/db/schema.sql

40 lines
1.2 KiB
MySQL
Raw Normal View History

2025-09-21 00:09:19 -04:00
CREATE TABLE IF NOT EXISTS api_keys (
`api_key` VARCHAR(255),
`pc_name` VARCHAR(255)
);
CREATE TABLE IF NOT EXISTS prefixes (
`name` VARCHAR(255),
`color` VARCHAR(255),
`weight` INT DEFAULT 0
);
CREATE TABLE IF NOT EXISTS tickets (
`prefix` VARCHAR(255),
`t_id` INT,
`first_name` VARCHAR(255),
`last_name` VARCHAR(255),
`phone_number` VARCHAR(255),
`preference` VARCHAR(20),
PRIMARY KEY (`prefix`, `t_id`)
);
CREATE TABLE IF NOT EXISTS baskets (
`prefix` VARCHAR(255),
`b_id` INT,
`description` VARCHAR(255),
`donors` VARCHAR(255),
`winning_ticket` INT
);
CREATE VIEW IF NOT EXISTS combined AS
SELECT b.prefix, b.b_id, b.winning_ticket, CONCAT(t.last_name, ", ", t.first_name) AS winner
FROM baskets b LEFT JOIN tickets t
ON b.prefix = t.prefix AND b.winning_ticket = t.t_id
ORDER BY b.prefix, b.b_id;
CREATE VIEW IF NOT EXISTS report AS
SELECT b.prefix, CONCAT(t.last_name, ", ", t.first_name) AS winner_name, t.phone_number, t.preference, b.b_id, b.winning_ticket, b.description
FROM baskets b LEFT JOIN tickets t
ON b.prefix = t.prefix AND b.winning_ticket = t.t_id
ORDER BY b.prefix, winner_name, t.phone_number, t.preference, b.b_id;