SQL - script - practica 1

From Ibbddunq

(Difference between revisions)
Line 1: Line 1:
 +
== Esquema que usamos ==
Tablas iniciales  
Tablas iniciales  
     producto <nomProd, stkMinimo>
     producto <nomProd, stkMinimo>
Line 10: Line 11:
     itemFactura <numFact, nomProd, cantidad>
     itemFactura <numFact, nomProd, cantidad>
-
Queries
+
== Queries para practicar joins y cuestiones básicas ==
 +
Qué practicamos: condiciones, join natural, operaciones en una fila, ordenamiento, IFNULL, join moñito
* codigo y nombre de los clientes que compraron Bidu, sin repetidos, ordenados x nombre.
* codigo y nombre de los clientes que compraron Bidu, sin repetidos, ordenados x nombre.
-
* idem en junio de 2008
+
** idem que compraron Bidu en junio de 2008
-
* idem con facturas sobre el deposito de Dominico.
+
** idem que hicieron facturas sobre el deposito de Dominico.
* <codCli, nomCli, numFact, fecha, importe, compraMaxima, diferencia> para las facturas que superan el maximo del cliente, ordenadas x nro de factura.
* <codCli, nomCli, numFact, fecha, importe, compraMaxima, diferencia> para las facturas que superan el maximo del cliente, ordenadas x nro de factura.
* <codCli, nomCli, numFact, fecha, cantidad> para las compras de Bidu, ordenadas x fecha y cod cliente.
* <codCli, nomCli, numFact, fecha, cantidad> para las compras de Bidu, ordenadas x fecha y cod cliente.
-
* lo mismo ordenado x cod cliente y fecha.
+
** lo mismo ordenado x cod cliente y fecha.
-
* lo mismo ordenado x cantidad de la compra más grande a la mäs chica.
+
** lo mismo ordenado x cantidad de la compra más grande a la mäs chica.
-
* <prod, stkmin, codCli, nomCli, numFact, fecha, cant> para los productos de stk minimo < 20, ordenado x producto y fecha.
+
** <prod, stkmin, codCli, nomCli, numFact, fecha, cant> para los productos de stk minimo < 20, ordenado x producto y fecha.
-
* <nro de factura, fecha, cantidad de bidu, cantidad de vitina> para las facturas que incluyen ambos productos.
+
* codigo y nombre de clientes que compraron Bidu o Vitina, sin repetidos.
* codigo y nombre de clientes que compraron Bidu o Vitina, sin repetidos.
* codigo, nombre, cod contacto o "SIN CONTACTO".
* codigo, nombre, cod contacto o "SIN CONTACTO".
Line 26: Line 27:
* <prod, cant, unitario, total item> para los items de la factura 1.
* <prod, cant, unitario, total item> para los items de la factura 1.
-
 
+
== para practicar alias de tablas y unión ==
-
Explicar alias de tablas, y después
+
* <nro de factura, fecha, cantidad de bidu, cantidad de vitina> para las facturas que incluyen ambos productos.
* <numFact, prod1, prod2, cantidad> para las facturas que tienen la misma cantidad de dos productos (me los va a tirar al derecho y al revés, y todas las combinaciones, todo OK)
* <numFact, prod1, prod2, cantidad> para las facturas que tienen la misma cantidad de dos productos (me los va a tirar al derecho y al revés, y todas las combinaciones, todo OK)
-
* codigo, nombre, cod contacto, nom contacto
+
* codigo, nombre, cod contacto, nom contacto para los clientes con contacto

Revision as of 19:30, 6 October 2008

Esquema que usamos

Tablas iniciales

   producto <nomProd, stkMinimo>
   stock <nomProd, deposito, cantidad>
   precioProducto <nomProd, desdeFecha, hastaFecha, precio>

Agregamos estas tablas

   cliente <codCli, nomCli, localidad, compraMaxima, codCliContacto>
      codCliContacto puede ser null
   factura <numFact, fecha, importe, codCli, deposito>
   itemFactura <numFact, nomProd, cantidad>

Queries para practicar joins y cuestiones básicas

Qué practicamos: condiciones, join natural, operaciones en una fila, ordenamiento, IFNULL, join moñito

  • codigo y nombre de los clientes que compraron Bidu, sin repetidos, ordenados x nombre.
    • idem que compraron Bidu en junio de 2008
    • idem que hicieron facturas sobre el deposito de Dominico.
  • <codCli, nomCli, numFact, fecha, importe, compraMaxima, diferencia> para las facturas que superan el maximo del cliente, ordenadas x nro de factura.
  • <codCli, nomCli, numFact, fecha, cantidad> para las compras de Bidu, ordenadas x fecha y cod cliente.
    • lo mismo ordenado x cod cliente y fecha.
    • lo mismo ordenado x cantidad de la compra más grande a la mäs chica.
    • <prod, stkmin, codCli, nomCli, numFact, fecha, cant> para los productos de stk minimo < 20, ordenado x producto y fecha.
  • codigo y nombre de clientes que compraron Bidu o Vitina, sin repetidos.
  • codigo, nombre, cod contacto o "SIN CONTACTO".
  • <numFact, deposito, producto, stock> para todos los productos en el dep de la factura, para cada factura de menos de 100 pesos.
  • <codCli, nomCli, compraMaxima, nomProd, precio * 1000> para cada combinación tal que el cliente puede comprar 1000 unidades del producto, tomando los precios al 01/05/2008.
  • <prod, cant, unitario, total item> para los items de la factura 1.

para practicar alias de tablas y unión

  • <nro de factura, fecha, cantidad de bidu, cantidad de vitina> para las facturas que incluyen ambos productos.
  • <numFact, prod1, prod2, cantidad> para las facturas que tienen la misma cantidad de dos productos (me los va a tirar al derecho y al revés, y todas las combinaciones, todo OK)
  • codigo, nombre, cod contacto, nom contacto para los clientes con contacto
Personal tools