query

21/10/2004 - 23:27 por Sinuhé Leines | Informe spam
Hola, gente experta!!

Alguien me podría ayudar a hacer este query SIN utilizar el tan mal afamado
subquery, por favor???

Select S.CV_Servicio, S.TX_Descripcion_Servicio, S.CV_Division,
D.TX_Division, S.Corta_Estancia
from Cat_Servicios S, Cat_Divisiones D
where S.CV_Servicio not in
(Select CV_Servicio
from Servicios_Unidad
where CV_Presupuestal='010101012151'
and TM_Baja is null)
AND S.CV_Division = D.CV_Division

Mil gracias!!!!

Preguntas similare

Leer las respuestas

#1 Isaias
21/10/2004 - 23:33 | Informe spam
¿Porque NO utilizar Sub-query?
Respuesta Responder a este mensaje
#2 Sinuhé Leines
21/10/2004 - 23:41 | Informe spam
He leido varios posts en este foro, en los que recomiendan evitar el uso de
de cursores y subqueries.

Y por otro lado la arquitectura del sistema permite(por razones ajenas y
desconocidas) sólo una sentencia where en la consulta
Respuesta Responder a este mensaje
#3 MAXI
22/10/2004 - 00:07 | Informe spam
Hola, pues podriamos hacer algo asi como:

Select S.CV_Servicio, S.TX_Descripcion_Servicio, S.CV_Division,
D.TX_Division, S.Corta_Estancia
from Cat_Servicios S INNER JOIN Cat_Divisiones D ON
S.CV_Division = D.CV_Division
LEFT JOIN (Select CV_Servicio
from Servicios_Unidad
where CV_Presupuestal='010101012151'
and TM_Baja is null) AS CX ON
CX.CV_SERVICIO = S.CV_SERVICIO
WHERE CX.CV_SERVICIO IS NULL

pd: probalo porque puede existir algun error de sintaxis




Maxi

Buenos Aires - Argentina
Desarrollador .NET 3 Estrellas
Microsoft User Group (MUG)
Mail: Maxi_accotto[arroba]speedy.com.ar

Msn Messenger:

"Sinuhé Leines" <Sinuhé escribió en el
mensaje news:
Hola, gente experta!!

Alguien me podría ayudar a hacer este query SIN utilizar el tan mal
afamado
subquery, por favor???

Select S.CV_Servicio, S.TX_Descripcion_Servicio, S.CV_Division,
D.TX_Division, S.Corta_Estancia
from Cat_Servicios S, Cat_Divisiones D
where S.CV_Servicio not in
(Select CV_Servicio
from Servicios_Unidad
where CV_Presupuestal='010101012151'
and TM_Baja is null)
AND S.CV_Division = D.CV_Division

Mil gracias!!!!
Respuesta Responder a este mensaje
#4 Sinuhé Leines
22/10/2004 - 00:19 | Informe spam
Gracias Maxi, lo que quisiera evitar es ese subquery

(Select CV_Servicio
from Servicios_Unidad
where CV_Presupuestal='010101012151'
and TM_Baja is null) as.

¿¿¿Es inevitable???

"MAXI" wrote:

Hola, pues podriamos hacer algo asi como:

Select S.CV_Servicio, S.TX_Descripcion_Servicio, S.CV_Division,
D.TX_Division, S.Corta_Estancia
from Cat_Servicios S INNER JOIN Cat_Divisiones D ON
S.CV_Division = D.CV_Division
LEFT JOIN (Select CV_Servicio
from Servicios_Unidad
where CV_Presupuestal='010101012151'
and TM_Baja is null) AS CX ON
CX.CV_SERVICIO = S.CV_SERVICIO
WHERE CX.CV_SERVICIO IS NULL

pd: probalo porque puede existir algun error de sintaxis




Maxi

Buenos Aires - Argentina
Desarrollador .NET 3 Estrellas
Microsoft User Group (MUG)
Mail: Maxi_accotto[arroba]speedy.com.ar

Msn Messenger:

"Sinuhé Leines" <Sinuhé escribió en el
mensaje news:
> Hola, gente experta!!
>
> Alguien me podría ayudar a hacer este query SIN utilizar el tan mal
> afamado
> subquery, por favor???
>
> Select S.CV_Servicio, S.TX_Descripcion_Servicio, S.CV_Division,
> D.TX_Division, S.Corta_Estancia
> from Cat_Servicios S, Cat_Divisiones D
> where S.CV_Servicio not in
> (Select CV_Servicio
> from Servicios_Unidad
> where CV_Presupuestal='010101012151'
> and TM_Baja is null)
> AND S.CV_Division = D.CV_Division
>
> Mil gracias!!!!



Respuesta Responder a este mensaje
#5 ulises
22/10/2004 - 00:31 | Informe spam
Tal como lo plantea Maxi no es una subconsulta sino una
tabla derivada. Lo primero que te aconsejo es que revises
el plan de ejecución de ambas sentencias y veas las
posibles diferencias.

Saludos,
Ulises

Gracias Maxi, lo que quisiera evitar es ese subquery

(Select CV_Servicio
from Servicios_Unidad
where CV_Presupuestal='010101012151'
and TM_Baja is null) as.

¿¿¿Es inevitable???

"MAXI" wrote:

Hola, pues podriamos hacer algo asi como:

Select S.CV_Servicio, S.TX_Descripcion_Servicio,




S.CV_Division,
D.TX_Division, S.Corta_Estancia
from Cat_Servicios S INNER JOIN Cat_Divisiones D ON
S.CV_Division = D.CV_Division
LEFT JOIN (Select CV_Servicio
from Servicios_Unidad
where CV_Presupuestal='010101012151'
and TM_Baja is null) AS CX ON
CX.CV_SERVICIO = S.CV_SERVICIO
WHERE CX.CV_SERVICIO IS NULL

pd: probalo porque puede existir algun error de sintaxis




Maxi

Buenos Aires - Argentina
Desarrollador .NET 3 Estrellas
Microsoft User Group (MUG)
Mail: Maxi_accotto[arroba]speedy.com.ar

Msn Messenger:

"Sinuhé Leines" <Sinuhé




escribió en el
mensaje




news:
> Hola, gente experta!!
>
> Alguien me podrà­a ayudar a hacer este query SIN




utilizar el tan mal
> afamado
> subquery, por favor???
>
> Select S.CV_Servicio, S.TX_Descripcion_Servicio,




S.CV_Division,
> D.TX_Division, S.Corta_Estancia
> from Cat_Servicios S, Cat_Divisiones D
> where S.CV_Servicio not in
> (Select CV_Servicio
> from Servicios_Unidad
> where CV_Presupuestal='010101012151'
> and TM_Baja is null)
> AND S.CV_Division = D.CV_Division
>
> Mil gracias!!!!





.

Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida