Código:
LA CONSULTApuedo usar en una clausula ON de un INNER JOIN una columna calculada? Les dejo el siguiente ejemplo con el que vengo trabajando este problema: LA TABLA +------+---------+--------+---------+ | id | nombre | codigo | tamanio | +------+---------+--------+---------+ | 1 | Pelota3 | 100 | 420 | | 2 | Carpa1 | 200 | 445 | | 3 | Pelota2 | 100 | 440 | | 4 | Carpa2 | 200 | 340 | | 5 | Carpa3 | 100 | 350 | | 6 | Pelota4 | 100 | 380 | +------+---------+--------+---------+
Código:
para evitarme volver a hacer la cuenta de la columna calculada me gustaria poder volver a usarla en la clausula, poque si en ves de una resta, es una susecion de multiplicaciones restada por otras multiplicaciones, gasto bastantes recursos# mysql> SELECT T1.* FROM tabla T1 # -> INNER JOIN # -> (SELECT codigo, MIN(ABS(tamanio-400)) diferencia # -> FROM tabla GROUP BY codigo) T2 # -> ON T1.codigo = T2.codigo AND ABS(T1.tamanio - 400) = T2.diferencia # -> ORDER BY codigo;
Muchas Gracias