Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/03/2017, 06:04
Avatar de syntex
syntex
 
Fecha de Ingreso: noviembre-2002
Ubicación: Cataluña
Mensajes: 978
Antigüedad: 21 años, 5 meses
Puntos: 4
consulta muy pesada y optimizarla

Hola muy buenas a todos,

Con vuestra gran ayuda, como me podríais ayudar a optimizar esta consulta????
Me encuentro que es muy lenta por el GROUP BY

SELECT
`articulos`.`id`,
`articulos`.`ref`,
`articulos`.`titulo_1`,
`articulos`.`id_iva`,
`articulos`.`precio1` `articulo_precio1`,
`articulos`.`create_user`,
`articulos`.`create_tienda`,

`stock`.`id_almacen`,

`almacenes`.`id` `id_almacen`,
`almacenes`.`codigo`,
`almacenes`.`nombre`,

`iva`.`iva`,

`precio_fijo`,

(
SELECT
(
SUM(IF (`stock`.`salidas` = 0, `stock`.`entradas` , 0)) - SUM(`stock`.`salidas`)
)

FROM
`stock`

WHERE
`stock`.`id_articulo` = `articulos`.`id` &&
`stock`.`id_almacen` = `almacenes`.`id`

) `FINAL`,
(
SELECT
ROUND(`stock`.`precio1`,2)

FROM
`stock`

WHERE
`stock`.`id_articulo` = `articulos`.`id` &&
`stock`.`id_almacen` = `almacenes`.`id` &&
`stock`.`concepto` = 'EuroWin'

LIMIT 1
) `precio1`


FROM
`stock`

INNER JOIN `articulos` ON
`articulos`.`id` = `stock`.`id_articulo`

INNER JOIN `almacenes` ON
`almacenes`.`id` = `stock`.`id_almacen`

LEFT JOIN `iva` ON
`iva`.`id` = `id_iva`

LEFT JOIN `articulos_preciofijo` ON
`articulos_preciofijo`.`id_articulos` = `stock`.`id_articulo` &&
`articulos_preciofijo`.`id_tienda` = '1

WHERE `articulos`.`eliminado` = 'no'

GROUP BY `articulos`.`ref`, `almacenes`.`id` '



Resultado::::::::::::::::
Código HTML:
Id 	          Titulo 	                                                                                                             Ref 	Código 	Detalle 	Cantidad 	Tarifa IVA inc. 	PVP WEB 	P.FIJO 	RDO 	
208417  	  PORTATIL ASUS A540SA-XX029D. CELERON N3050 15.6 	        4712900265040 	 17 	        almacen1 	  0.00  	  0.00€  	  0.00€  	  ---  	          ---   	
206294  	  PORTATIL LENOVO B50-10 INTEL CELERON N2840 15.6 	          889800079054 	 17 	        almacen2 	  0.00  	  0.00€  	  0.00€  	  ---  	          ---   	
184062  	  Bolsa transporte Hamann para escalera telescopica hasta 1 m. 	 0000-04000009 	 31 	        almacen1 	  0.00  	  0.00€  	  0.00€  	  ---  	          ---
__________________
------------------------------------------------
La paciencia es el rey de la ciencia
------------------------------------------------