Ver Mensaje Individual
  #4 (permalink)  
Antiguo 07/05/2012, 13:26
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Usar alias de llamada a función en el WHERE

Cita:
Iniciado por pinchu Ver Mensaje
Hola:

Tengo una consulta en la que hago "select calculaDistancia() as distancia". Luego intenté añadirle un "WHERE distancia < 30" pero claro me sale el error de que distancia no está definido. Lo único que se me ocurre hacer es "WHERE calculaDistancia() < 30" pero esto sería llamar a la función dos veces, lo cual es muy ineficiente ¿no? ¿Qué solución puedo tomar?

Gracias
En términos generales, ningún DBMS que yo conozca permite usar los aliaspuestos en el SELECT dentro del WHERE perteneciente a la misma consulta.
Como dice Leonardo, se maneja haciendo que la consulta se transforme en una tabla derivada.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)