Buenos días amigos, antes de nada decir que llevo usando este foro de forma anonima un par de meses y que vuestras contribuciones me ayudan muchisimo tanto en Java como en MySQL. Muchas gracias!
Hoy decidí registrarme a ver si encuentro una solución al problema que me surgió.
Estoy realizando el proyecto de fin de ciclo de ASIR y cree una base de datos basada en una empresa de autobuses.
Os pongo las dos tablas que he creado y os detallo el problema que me surge.
Código SQL:
Ver originalCREATE TABLE vehiculos
(
Cod_Veh INT NOT NULL,
Matricula VARCHAR(7),
Modelo VARCHAR(20),
Capacidad_deposito INT,
Km_totales INT,
Ultimo_repostaje DATE,
Consumo_medio_ultimo_deposito FLOAT,
PRIMARY KEY (Cod_Veh)
);
DROP TABLE IF EXISTS repostajes;
CREATE TABLE repostajes
(
Cod_Rep INT NOT NULL,
Cod_Veh INT NOT NULL,
Fecha DATE,
Kilometros INT,
Litros_repostados INT,
Pues bien, necesito crear un trigger que me permita insertar el consumo medio desde el ultimo repostaje, para eso necesito un trigger de este estilo:
Código SQL:
Ver originalCREATE TRIGGER repostajes
BEFORE UPDATE ON repostajes
FOR EACH ROW SET
vehiculos.Km_totales=NEW.Kilometros,
vehiculos.Ultimo_repostaje=NEW.Fecha,
vehiculos.Consumo_medio_ultimo_deposito=(NEW.Litros_repostados * 100) / (Kmultimorepostaje - Kmpenultimo repostaje);
Lo que necesito saber es si hay alguna forma que al introducir un nuevo repostaje, mire esos km que acabas de meter y les reste el mismo campo del anterior repostaje con el mismo codigo de vehiculo.
Estoy muy verde en MySQL porque el tema de automatización lo dimos en el tercer trimestre, que por motivos de saludo no pude asistir.
Muchas gracias y un saludo!