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

Análisis :

  • 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

update detalle set valorventa = (select valorunitario + (valorunitario * 0.23) from articulo where articulo.codigo = detalle.codigo);  (SINTAXIS)

Demostración de la valor venta

2. calcular el total de la tabla detalle 

  • 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 segun la tabla detalle de cada articulo 

  • 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 3 y 5 artículos en cada venta 

  • Campo a eliminar =  artículos vendidos de 3 a 5 
  • Con quien o que lo va a eliminar= 
  • Condiciones= detalle.codigo = articulo.codigo group by articulo.codigo);  
  • Comando = WHERE, BETWEEN, Y GROUP BY

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

SINTAXIS

create table copia like detalle; 

insert into copia select * from detalle where month(fecha)=2; 

© 2020 Bases de datos | Todos los derechos reservados
Creado con Webnode
¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar