Reutilizar funcion sin afectar desempeño

01/06/2009 - 17:44 por Firefox | Informe spam
Hola, tengo una funcion escalar que devuelve un valor moneda (tipo
money :D) y tengo varias columnas en el select que utilizan dicha
funcion. Ahora lo que quiero es no tener que llamar a la misma funcion
varias veces en el select por ejemplo SELECT myfuncion(id), myfuncion
(id)-50, etc (lo que se me ocurra). no puedo calcular estos montos
fuera del select puesto que dependiendo de los join toma el dato
correspondiente. Mil gracias por anticipado.

Preguntas similare

Leer las respuestas

#1 Rubén Vigón
01/06/2009 - 18:17 | Informe spam
Puedes usar una subconsulta y un alias; por ejemplo

SELECT
subcons.MiResultado,
subcons.MiResultado - 50,
subcons.MiResultado - 75,
subcons.MiResultado * 10,
subcons.MiResultado + 25
FROM (
SELECT myfuncion(id) AS MiResultado FROM tabla WHERE condiciones
) AS subcons

Un saludo!

Rubén Vigón
http://vigon.mvps.org
Respuesta Responder a este mensaje
#2 alfonso_c#
01/06/2009 - 22:56 | Informe spam
On 1 jun, 12:17, Rubén Vigón wrote:
Puedes usar una subconsulta y un alias; por ejemplo

    SELECT
        subcons.MiResultado,
        subcons.MiResultado - 50,
        subcons.MiResultado - 75,
        subcons.MiResultado * 10,
        subcons.MiResultado + 25
    FROM (
            SELECT myfuncion(id) AS MiResultado FROM tabla WHERE condiciones
    ) AS subcons

Un saludo!

Rubén Vigónhttp://vigon.mvps.org



mil gracias :D
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida