Cita:
Empezado por ContraVeneno
Hola, revivo este hilo porque tengo una duda similar:
Supongamos que mi subconsulta es muy muy muy compleja.
¿habría otra forma de hacerlo?, es decir, sí podría realizarlo como recomiendan en este hilo. Pero lo que no quiero hacer es tener que ejecutar ese subconsulta dos veces (una para mostrar el valor y otra para calcular el porcentaje).
¿Alguna idea para evitar ejecutar la subconsulta dos veces ?
|
Hola Contra, ¿tu te refieres a evitar hacer ese encadenamiento, que en ocasiones es un tanto molesto, para evitar lanzar varias subconsultas que al final es todo lo "mismo"?
Si es eso... lamentablemente si uno desea hacerlo a través de sólo consultas SQL no se puede hacerlo de una simple pasada.
Estos tipos de requisitos (como en este caso el porcentajes sobre el total) exigen dos pasadas.... Es a mi modo de ver... algo dificil (por no decir imposible) de un solo tirón.
Una alternativa es llevar un registro de dicha información ya procesada. Es decir que puede que sea más conveniente llevar alguna tabla "auxiliar" en donde lleves cálculos parciales de aquellas operaciones complejas. De este modo puede que con simples consultas (a lo mejor un poco más complicada pero seguramente más sencillas que estar realizando anidamientos) a dicha tabla.
Se que no te he dado la solución, pero al menos es una alternativa.
Saludos,