SUBCONSULTAS
select...select(s)
update...select(s)
delete...select(s)
insert...select(s)
update tabla set campo=valor where condicion;
update tabla set (subconsulta),(subconsulta), compo=valor where subconsultas;
1. Calcular el valorventa de la tabla detalle con un incremento del 23% del valorunitario de la tabla articulo
Analisis:
- Campo a reemplazar= Valorventa de la tabla detalle
- Con quien o que lo va a reemplazar= (valorunitario*0.23)+valorunitario de la tabla articulo
- Condiciones= articulo.codigo=detalle.codigo
- Comando Update
- Sintaxis:
- update detalle set valorventa = (select valorunitario + (valorunitario * 0.23) from articulo where articulo.codigo = detalle.codigo);
Demostración valor venta
2. Calcular el total de la tabla detalle
Analisis:
- Campo a reemplazar= total de la tabla detalle
- Con quien o que lo va a reemplazar= cantidad*valorventa
- Condiciones= ninguna
- Comando Update
- Sintaxis:
- update detalle set total = cantidad * valorventa;
3. calcular las existencias según la tabla detalle de cada articulo
Analisis:
- Campo a reemplazar= existencia de la tabla artículo
- Con quien o que lo va a reemplazar= cantidad-suma(cantidad) de la tabla detalle
- Condiciones= detalle.codigo = articulo.codigo
- Comando Update
- Sintaxis:
update articulo set existencia = cantidad - (select sum(cantidad) from detalle where detalle.codigo = articulo.codigo);
4. Eliminar los artículos que hayan vendido entre 2 y 5 artículos en cada venta
Sintaxis:
delete
from articulo where codigo = (select codigo from detalle where cantidad between
2 and 5 and detalle.codigo = articulo.codigo group by articulo.codigo);
5. Crear una tabla copia (duplicar la tabla detalle) y llenarla con la información de detalle, solo los registros del mes de febrero
Esta copia es solo para la estructura de las tablas y no para la información
Sintaxis:
Create table copia like detalle;
Luego insertamos los datos que cumplan con el requerimiento
Sintaxis:
insert
into copia select * from detalle where
month(fecha)=2;