SUB CONSULTAS EN SQL

Buenas;
Me gustaría que me enseñéis como usar subconsultas en SQL, la sintaxis a emplear y eso..
Mil gracias

1 respuesta

1
Respuesta de
La definición de subconsulta sería aquella consulta incluida dentro de una cláusula WHERE o HAVING de otra consulta. A veces, para expresar ciertas condiciones no hay más remedio que obtener el valor que buscamos como resultado de una consulta.
Por ejemplo supongamos que tenemos una tabla de proyectos que incluye el precio y queremos sacar los datos de los proyectos con un precio mayor.
SELECT codigo_proyecto, nombre_proyecto
FROM proyectos
WHERE precio = (SELECT MAX(precio)
                FROM proyectos
);
A efectos prácticos, piensa que un subconsulta te puede devolver:
a) 1 valor o un conjunto de valores, por lo que puedes incluir en cualquier condición en la que sustituyas un valor por la subconsulta (ejemplo anterior) o un conjunto de valores por la subconsulta (con un IN):
select * 
 from Category 
where CategoryID not IN (select CategoryID 
                           from Product 
                          where CategoryID is not null
);
b) Una tabla, por lo que podrías sustituir una tabla por una subconsulta si la necesitaras...
select  max(t.Cantidad) as Maximo
     , max(t.ProductID) as ProductID
  from
 (select d.ProductID
      , sum(d.Quantity) as Cantidad
   from OrderDetail d
group by d.ProductID
) t;
Saludos.
Añade un comentario a esta respuesta
Añade tu respuesta
Haz clic para o
Escribe tu mensaje