Ver Mensaje Individual
  #7 (permalink)  
Antiguo 17/01/2013, 06:52
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: Compras y Ventas en la misma consulta

Código MySQL:
Ver original
  1. SELECT claart, SUM(sbc.cantidadC),
  2.                         SUM(sbc.cantidadV),  
  3.                         SUM(sbc.cantidadC)-SUM(sbc.cantidadV) 'Saldo'
  4. SELECT claart, claemp, cantidad 'cantidadC',0  'cantidadV'
  5. FROM compra WHERE year(fecha)<2011
  6. SELECT claart, claemp, 0  'cantidadC', cantidad 'cantidadV'
  7. FROM venta WHERE year(fecha)<2011
  8. ) as sbc
  9. GROUP BY claart;

Si hay mas de un claemp por cada claart deberias agregarlo al group by....

Cita:
Esto equivale a hacer una vista y hacer una consulta a esa vista no? lo de SELECT campos FROM (SELECT campos). El rendimiento sería similar o compensa hacer una vista?
Equivalente del todo no pero es similar....

Una vista es una consulta guardada por decirlo de alguna manera, es eficiente si esa consulta la vas a usar habitualmente... si no hay diferencia... en mysql el uso forzado de indices que se puede hacer en una consulta para mejorar el rendimiento, no se puede usar en una vista... almenos hasta las versiones que he tocado... no se si ha cambiado.
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 17/01/2013 a las 06:57