Sie sind auf Seite 1von 9

-- ------------------------------------------------------ Schema fireup

-- ----------------------------------------------------CREATE SCHEMA IF NOT EXISTS `fireup` DEFAULT CHARACTER SET


utf8 COLLATE utf8_general_ci ;
USE `fireup` ;
-- ------------------------------------------------------ Tabla `fireup`.`Cliente`
-- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `fireup`.`Cliente` (
`idCliente` INT NOT NULL AUTO_INCREMENT,
`pais` VARCHAR(45) NOT NULL,
`CP` INT NOT NULL,
`calle` TEXT NOT NULL,
`colonia` TEXT NOT NULL,
`numeroExterior` INT NOT NULL,
`nombres` TEXT NOT NULL,
`apellidoPaterno` TEXT NOT NULL,
`apellidoMaterno` TEXT NOT NULL,
PRIMARY KEY (`idCliente`))
ENGINE = InnoDB;

-- ------------------------------------------------------ Tabla `fireup`.`Factura`


-- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `fireup`.`Factura` (
`numeroDeFactura` INT NOT NULL AUTO_INCREMENT,
`fecha` DATETIME NOT NULL,
`precioTotal` FLOAT NOT NULL,
`idCliente` INT NOT NULL,
PRIMARY KEY (`numeroDeFactura`),
INDEX `fk_Factura_Cliente_idx` (`idCliente` ASC),

CONSTRAINT `fk_Factura_Cliente`
FOREIGN KEY (`idCliente`)
REFERENCES `fireup`.`Cliente` (`idCliente`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;

-- ------------------------------------------------------ Tabla `fireup`.`TipoEstufa`


-- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `fireup`.`TipoEstufa` (
`idTipoEstufa` INT NOT NULL AUTO_INCREMENT,
`descripcion` TEXT NOT NULL,
PRIMARY KEY (`idTipoEstufa`))
ENGINE = InnoDB;

-- ------------------------------------------------------ Tabla `fireup`.`Inspector`


-- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `fireup`.`Inspector` (
`idInspector` INT NOT NULL AUTO_INCREMENT,
`nombres` TEXT NOT NULL,
`apellidoPaterno` TEXT NOT NULL,
`apellidoMaterno` TEXT NOT NULL,
PRIMARY KEY (`idInspector`))
ENGINE = InnoDB;

-- ------------------------------------------------------ Tabla `fireup`.`Estufa`


-- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `fireup`.`Estufa` (

`numeroSerie` INT NOT NULL,


`idTipoEstufa` INT NOT NULL,
`idInspector` INT NOT NULL,
PRIMARY KEY (`numeroSerie`),
INDEX `fk_Estufa_TipoEstufa1_idx` (`idTipoEstufa` ASC),
INDEX `fk_Estufa_Inspector1_idx` (`idInspector` ASC),
CONSTRAINT `fk_Estufa_TipoEstufa1`
FOREIGN KEY (`idTipoEstufa`)
REFERENCES `fireup`.`TipoEstufa` (`idTipoEstufa`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_Estufa_Inspector1`
FOREIGN KEY (`idInspector`)
REFERENCES `fireup`.`Inspector` (`idInspector`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;

-- ------------------------------------------------------ Tabla `fireup`.`Reparacion`


-- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `fireup`.`Reparacion` (
`numeroDeReparacion` INT NOT NULL AUTO_INCREMENT,
`descripcion` TEXT NULL,
`cantidadTotal` INT NULL,
`idCliente` INT NOT NULL,
`numeroSerie` INT NOT NULL,
PRIMARY KEY (`numeroDeReparacion`),
INDEX `fk_Reparacion_Cliente1_idx` (`idCliente` ASC),
INDEX `fk_Reparacion_Estufa1_idx` (`numeroSerie` ASC),
CONSTRAINT `fk_Reparacion_Cliente1`
FOREIGN KEY (`idCliente`)
REFERENCES `fireup`.`Cliente` (`idCliente`)

ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_Reparacion_Estufa1`
FOREIGN KEY (`numeroSerie`)
REFERENCES `fireup`.`Estufa` (`numeroSerie`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;

-- ------------------------------------------------------ Tabla `fireup`.`Parte`


-- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `fireup`.`Parte` (
`numeroParte` INT NOT NULL AUTO_INCREMENT,
`descripcion` TEXT NOT NULL,
`costo` FLOAT NOT NULL,
`precioVenta` FLOAT NOT NULL,
PRIMARY KEY (`numeroParte`))
ENGINE = InnoDB;

-- ------------------------------------------------------ Tabla `fireup`.`ListaFactura`


-- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `fireup`.`ListaFactura` (
`numeroDeFactura` INT NOT NULL,
`numeroParte` INT NOT NULL,
INDEX `fk_Factura_has_Parte_Parte1_idx` (`numeroParte` ASC),
INDEX `fk_Factura_has_Parte_Factura1_idx` (`numeroDeFactura` ASC),
CONSTRAINT `fk_Factura_has_Parte_Factura1`
FOREIGN KEY (`numeroDeFactura`)
REFERENCES `fireup`.`Factura` (`numeroDeFactura`)
ON DELETE NO ACTION

ON UPDATE NO ACTION,
CONSTRAINT `fk_Factura_has_Parte_Parte1`
FOREIGN KEY (`numeroParte`)
REFERENCES `fireup`.`Parte` (`numeroParte`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;

-- ------------------------------------------------------ Tabla `fireup`.`ListaReparacion`


-- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `fireup`.`ListaReparacion` (
`numeroDeReparacion` INT NOT NULL,
`numeroParte` INT NOT NULL,
INDEX `fk_Reparacion_has_Parte_Parte1_idx` (`numeroParte` ASC),
INDEX `fk_Reparacion_has_Parte_Reparacion1_idx`
(`numeroDeReparacion` ASC),
CONSTRAINT `fk_Reparacion_has_Parte_Reparacion1`
FOREIGN KEY (`numeroDeReparacion`)
REFERENCES `fireup`.`Reparacion` (`numeroDeReparacion`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_Reparacion_has_Parte_Parte1`
FOREIGN KEY (`numeroParte`)
REFERENCES `fireup`.`Parte` (`numeroParte`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
INSERT INTO `fireup`.`cliente`
(`pais`,
`CP`,
`calle`,

`colonia`,
`numeroExterior`,
`nombres`,
`apellidoPaterno`,
`apellidoMaterno`)
VALUES
('Mxico', 31060, 'Divisin del norte', 'Centro', 1356, 'Juan Arturo', 'Campos',
'Aguirre'),
('Mxico', 31060, 'Divisin del norte', 'Centro', 1356, 'Jos Alberto',
'Campos', 'Aguirre'),
('Mxico', 31060, 'Divisin del norte', 'Centro', 1356, 'Jorge Hugo', 'Campos',
'Aguirre');
INSERT INTO `fireup`.`inspector`
(`nombres`,
`apellidoPaterno`,
`apellidoMaterno`)
VALUES
('Pedro', 'Hernndez', 'Hernndez'),
('Jorge', 'Morales', 'Gutierrez');

INSERT INTO `fireup`.`tipoestufa`


(`descripcion`)
VALUES
('tipo 1'), ('tipo 2');

INSERT INTO `fireup`.`estufa`


(`numeroSerie`,
`idTipoEstufa`,
`idInspector`)
VALUES
(123456789, 1, 1), (123456788, 2, 1);

INSERT INTO `fireup`.`parte`


(`descripcion`,
`costo`,
`precioVenta`)
VALUES
('quemador', 100, 150),
('regulador', 200, 270);

INSERT INTO `fireup`.`factura`


(`fecha`,
`precioTotal`,
`idCliente`)
VALUES
(
now(), 1520, 1),(now(), 2000, 2);

INSERT INTO `fireup`.`reparacion`


(`descripcion`,
`cantidadTotal`,
`idCliente`,
`numeroSerie`)
VALUES
('reparacin de quemador', 1, 1, 123456789);
INSERT INTO `fireup`.`listareparacion`
(`numeroDeReparacion`,
`numeroParte`)
VALUES
(1, 1);

select * from cliente;


select
cliente.idCliente as idCliente,
numeroDeFactura,
concat(nombres, " ", apellidoPaterno, " ", apellidoMaterno) as nombre,
concat("Calle ", calle, " Col. ", colonia, " ", numeroExterior) as direccion,
precioTotal,
fecha
from
cliente join factura on cliente.idCliente = factura.idCliente
group by
1;

select
numeroDeReparacion,
parte.numeroParte as numeroParte,
descripcion,
costo,
precioVenta
from
listareparacion join parte on listareparacion.numeroParte =
parte.numeroParte
where
listareparacion.numeroDeReparacion = 1;
select
*
from
cliente join factura on cliente.idCliente = factura.idCliente
where
cliente.idCliente not in
(

select
idCliente
from
reparacion
)
;

Das könnte Ihnen auch gefallen