CREATE TABLE Mesero (
    id_mesero INT AUTO_INCREMENT PRIMARY KEY,
    nombre VARCHAR(100) NOT NULL
);
CREATE TABLE Categoria (
    id_categoria INT AUTO_INCREMENT PRIMARY KEY,
    nombre_categoria VARCHAR(100) NOT NULL
);
CREATE TABLE Plato (
    id_plato INT AUTO_INCREMENT PRIMARY KEY,
    nombre VARCHAR(100) NOT NULL,
    precio DECIMAL(10,2) NOT NULL,
    id_categoria INT,
    FOREIGN KEY (id_categoria) REFERENCES Categoria(id_categoria)
);
CREATE TABLE Pedido (
    id_pedido INT AUTO_INCREMENT PRIMARY KEY,
    fecha DATE NOT NULL,
    mesa INT NOT NULL,
    id_mesero INT,
    FOREIGN KEY (id_mesero) REFERENCES Mesero(id_mesero)
);
CREATE TABLE DetallePedido (
    id_detalle INT AUTO_INCREMENT PRIMARY KEY,
    id_pedido INT,
    id_plato INT,
    cantidad INT NOT NULL,
    FOREIGN KEY (id_pedido) REFERENCES Pedido(id_pedido),
    FOREIGN KEY (id_plato) REFERENCES Plato(id_plato)
);


SELECT p.id_pedido, p.fecha, m.nombre AS mesero,
       pl.nombre AS plato, pl.precio, c.nombre_categoria, d.cantidad
FROM Pedido p
JOIN Mesero m ON p.id_mesero = m.id_mesero
JOIN DetallePedido d ON p.id_pedido = d.id_pedido
JOIN Plato pl ON d.id_plato = pl.id_plato
JOIN Categoria c ON pl.id_categoria = c.id_categoria;

