Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/01/2017, 19:22
calel_leon
 
Fecha de Ingreso: febrero-2016
Mensajes: 48
Antigüedad: 8 años, 2 meses
Puntos: 0
Envío de argumentos a una funcion

Hola,

Tengo una función (con valores de tabla) que utiliza funciones (con valores escalares) para generar una tabla con valores específicos, pero en alguna de las llamadas a funciones escalares debo enviar como parámetros alguno de los parámetros que ya obtuve de una anterior llamada a una función escalar.

Mi duda es si hay forma de guardar los valores ya entregados por una función escalar, para no tener que invocar nuevamente a una función desde otra función, para enviar el parámetro.

Sería algo como esto:

Código SQL:
Ver original
  1. INSERT INTO @TablaTemporal  (campoA, CampoB, CampoC, CampoD)
  2. SELECT a.dato1,
  3.          b.dato2,
  4.          funcionPrimera(a.dato1,b.dato2),
  5.          funcionSegunda(b.dato2, funcionPrimera(dato1,dato2))
  6. FROM TablaGeneral a,TablaAux b
  7. WHERE a.id=b.id


La idea es que quede algo así:

Código SQL:
Ver original
  1. INSERT INTO @TablaTemporal  (campoA, CampoB, CampoC, CampoD)
  2. SELECT a.dato1,
  3.          b.dato2,
  4.          funcionPrimera(a.dato1,b.dato2),
  5.          funcionSegunda(b.dato2, dato_funcionPrimera)
  6. FROM TablaGeneral a,TablaAux b
  7. WHERE a.id=b.id