buen día.
he estado realizando una consulta que realiza un join entre 4 tablas y ejecuta una función, el detalle es que cuando trato de ordenar los resultados , por el valor obtenido de la funcion esta llega a demorar hasta 3 minutos.
la consulta es la siguiente
Código SQL:
Ver originalSELECT cas.id,cas.tipo, socio, cliente, usu.nombre ,cas.monto,
CASE cas.especial WHEN 0 THEN eta.descripcion ELSE esp.descripcion END,
getdia(2,cas.id,etapa,especial) AS dia
FROM casos cas
LEFT JOIN usuarios usu ON usu.id=cas.abogado
LEFT JOIN especiales esp ON esp.etapa =cas.especial
LEFT JOIN normales eta ON eta.etapa =cas.etapa AND cas.tipo=eta.tipo
ORDER BY dia DESC
si no lo ordeno por DIA no demora en ejecutar,
cabe mencionar que tengo 17000 registros.
la pregunta es existe alguna forma de optimizar dicha consulta.