Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Para que las Subconsultas??

Estas en el tema de Para que las Subconsultas?? en el foro de SQL Server en Foros del Web. Me tiene muy intrigado el uso de estas por que no entinendo su uso hago algo que prodria hacer con una consulta normal solo que ...
  #1 (permalink)  
Antiguo 28/05/2007, 03:00
 
Fecha de Ingreso: marzo-2007
Mensajes: 29
Antigüedad: 17 años, 2 meses
Puntos: 0
Para que las Subconsultas??

Me tiene muy intrigado el uso de estas por que no entinendo su uso hago algo que prodria hacer con una consulta normal solo que mas enredado por ejemplo:

--eliminar los clientes cuya cantidad sea menor a 67
DELETE from clientes
where id_cliente in(

SELECT id_cliente from pedidos where cantidad<67

)

CUANDO SIMPLEMENTE MEJOR HAGO ESTO

DELETE FROM clientes WHERE cantidad<67

O estoy mal por ahora no le hayo caso.
  #2 (permalink)  
Antiguo 28/05/2007, 08:09
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 5 meses
Puntos: 38
Re: Para que las Subconsultas??

asi es, es mejor evitarlas porque si no se arman bien te pueden causar grandes problemas en el rendimiento, pero en algunos casos son realmente utiles...
Todo depende de la necesidad de información que tengas...

saludos
__________________
La sencillez y naturalidad son el supremo y último fin de la cultura...
--
MCTS : SQL Server 2008, .NET Framework 3.5, ASP.NET Applications.
  #3 (permalink)  
Antiguo 31/05/2007, 10:33
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Re: Para que las Subconsultas??

Porque no siempre tendrás un filtro tan sencillo. Muchas veces el listado vendrá de otra tabla o de resultados más complejos como cuando requieras de sentencias de agregación (max, min, sum, etc)
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:40.