Как я могу получить лучший результат по времени на этом Mysql Query - PullRequest
0 голосов
/ 01 июля 2019

Я использую этот Mysql Query и работаю хорошо, но мне нужно получить лучший результат. Как я могу это сделать?

SELECT TblExistencias.id as ID, TblExistencias.codigo as Codigo, 
       TblPartes.detalle as Detalle,TblPartes.neto1 as PrecioActual, 
       TblExistencias.Condicion_Producto as Condicion,TblCategorias.categoria as Categoria, 
       TblSubcategorias.subcategoria as Subcategoria, TblExistencias.costo as Costo, 
       TblExistencias.serial as Serial, TblExistencias.vendido as Vendido, 
       TblConceptosFacturas.ventaonline as VentaOnline, TblRemitos.nroremitocompleto as Remito, 
       TblFacturas.nrofacturacompleto as Factura, TblFacturas.fecha as FechaVenta,
       TblConceptosFacturas.ventaTotUn as Venta,TblConceptosFacturas.comisionmlunit as Comision,
       TblFacturas.costoenvio as Envio, if(TblExistencias.vendido =1, 
       TblConceptosFacturas.ventaTotUn - TblExistencias.Costo - TblConceptosFacturas.comisionmlunit - TblFacturas.costoenvio,0) as Ganancia, 
       TblProveedores.razonsocial as Proveedor, TblFacturasCompras.nrofacturacompleto as Compra, 
       TblFacturasCompras.fecha as FechaCompra, TblClientes.razonsocial as Cliente 
from TblExistencias 
    left join TblPartes on TblExistencias.codigo = TblPartes.codigo1 
    left join TblRemitos on TblExistencias.id_RemitoVenta = TblRemitos.id
    left join TblFacturasCompras on TblExistencias.id_factura = TblFacturasCompras.id 
    left join TblClientes on TblRemitos.id_cliente = TblClientes.id 
    left join TblFacturas on TblRemitos.id_factura = TblFacturas.id 
    left join TblConceptosFacturas on TblFacturas.id=TblConceptosFacturas.id_factura and TblConceptosFacturas.codigoproducto = TblExistencias.codigo 
    left join TblCategorias on TblCategorias.id = TblPartes.id_categoria 
    left join TblSubcategorias on TblPartes.id_subcategoria = TblSubcategorias.id 
    left join TblProveedores on TblFacturasCompras.id_proveedor = TblProveedores.id 
order by comision desc

Ответы [ 2 ]

0 голосов
/ 02 июля 2019

Решением является создание индекса для каждого реляционного столбца , например:

TblFacturasCompras.id_proveedor = TblProveedores.id
0 голосов
/ 01 июля 2019

Проблема была в предложении, запрос перешел с 87 секунд на 4 секунды.Спасибо за помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...