funcion en subconsulta

16/03/2006 - 13:40 por Pablo | Informe spam
hola a todos
desde ya muhas gracias por tomarse el tiempo de leer este mensaje
hoy vengo con un problema que hasta ahora no pude resolver

para poder resolver un problema cree una funcion que me devuelve una tabla a
esta funcion se le pasa un numero entero
el problema que esta funcion debo utilizarla en una subconsulta y funciona
perfecto excepto que como parametro no le puedo pasar la columna de la tabla
seria ago asi:

SELECT IdTabla
FROM Tabla T
WHERE Exists (dbo.MiFuncion(T.IdTabla))

esta sintaxis no me permite ejecutar la consulta

SELECT IdTabla
FROM Tabla T
WHERE Exists (dbo.MiFuncion(5)) si hardcodeo el stored si? eso es lo extraño
y quizas sea ingenuo ¿pero no puedo ejecutar la funcion en una subconsulta?

gracias a todos
Pablo...

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
16/03/2006 - 16:03 | Informe spam
Pablo,

Eso no lo podemos hacer en SQL Server 2000. En SQL Server 2005 lo puedes
hacer mediante el uso del operador "cross apply".

Using CROSS APPLY in SQL Server 2005
http://www.sqlteam.com/item.asp?ItemID!502


AMB

"Pablo" wrote:

hola a todos
desde ya muhas gracias por tomarse el tiempo de leer este mensaje
hoy vengo con un problema que hasta ahora no pude resolver

para poder resolver un problema cree una funcion que me devuelve una tabla a
esta funcion se le pasa un numero entero
el problema que esta funcion debo utilizarla en una subconsulta y funciona
perfecto excepto que como parametro no le puedo pasar la columna de la tabla
seria ago asi:

SELECT IdTabla
FROM Tabla T
WHERE Exists (dbo.MiFuncion(T.IdTabla))

esta sintaxis no me permite ejecutar la consulta

SELECT IdTabla
FROM Tabla T
WHERE Exists (dbo.MiFuncion(5)) si hardcodeo el stored si? eso es lo extraño
y quizas sea ingenuo ¿pero no puedo ejecutar la funcion en una subconsulta?

gracias a todos
Pablo...



Respuesta Responder a este mensaje
#2 Pablo
16/03/2006 - 16:22 | Informe spam
gracias por la informacion te agradezco mucho
Pablo...


"Alejandro Mesa" escribió en el
mensaje news:
Pablo,

Eso no lo podemos hacer en SQL Server 2000. En SQL Server 2005 lo puedes
hacer mediante el uso del operador "cross apply".

Using CROSS APPLY in SQL Server 2005
http://www.sqlteam.com/item.asp?ItemID!502


AMB

"Pablo" wrote:

> hola a todos
> desde ya muhas gracias por tomarse el tiempo de leer este mensaje
> hoy vengo con un problema que hasta ahora no pude resolver
>
> para poder resolver un problema cree una funcion que me devuelve una


tabla a
> esta funcion se le pasa un numero entero
> el problema que esta funcion debo utilizarla en una subconsulta y


funciona
> perfecto excepto que como parametro no le puedo pasar la columna de la


tabla
> seria ago asi:
>
> SELECT IdTabla
> FROM Tabla T
> WHERE Exists (dbo.MiFuncion(T.IdTabla))
>
> esta sintaxis no me permite ejecutar la consulta
>
> SELECT IdTabla
> FROM Tabla T
> WHERE Exists (dbo.MiFuncion(5)) si hardcodeo el stored si? eso es lo


extraño
> y quizas sea ingenuo ¿pero no puedo ejecutar la funcion en una


subconsulta?
>
> gracias a todos
> Pablo...
>
>
>
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida