base de dato

Páginas: 7 (1570 palabras) Publicado: 11 de diciembre de 2013
Bases de Datos II
Laboratorio 06 Subqueries

Ingeniería en Sistemas Computacionales

INTRODUCCIÓN A SUBQUERIES
Subqueries es uno de los aspectos más complejos de SQL. Los subqueries son frecuentemente
utilizados para resolver la complejidad dividiendo quieres muy grandes en queries más pequeños, los
cuales interactúan uno con otro. En algunas situaciones, los subqueries pueden serutilizados también
para mejorar el desempeño de instrucciones SQL.
Un subquery contesta cuestiones de múltiples partes. Un subquery en la clausula FROM de
una sentencia SELECT se le llama también una vista alineada. Un subquery en la clausula WHERE de
la sentencia SELECT se le llama subquery anidado.
Un subquery puede contener otro subquery. La base de datos de Oracle no impone un límite en
elnúmero de niveles de subqueries en la clausula FROM desde el query de más alto nivel. Se pueden
anidar hasta 255 niveles de subqueries en la clausula WHERE.
TIPOS DE SUBQUERIES
Un subquery es una instrucción SQL llamada desde otro Query u otro subquery. Los subqueries
pueden recuperar varios conjuntos de resultados y pueden ser definidos en base a lo que ellos
recuperan:





Renglónsimple / columna simple. Este tipo de subquery puede ser utilizado para encontrar un
solo valor (un renglón).
Múltiples renglones / una columna a la vez. Este tipo de subquery recupera una lista de valores
(múltiples renglones).
Múltiples columnas / simple o múltiples renglones. Esta es la variación más compleja.
Subqueries correlacionados. La palabra correlación es utilizada para describir larelación entre
el query llamante y el subquery.

Los subqueries también pueden ser definidos como anidados o vistas inline:



Subqueries anidados. Los subqueries pueden llamar otros subqueries y así sucesivamente ad
infinitum. En otras palabras, subqueries pueden estar anidados dentro de subqueries, dentro de
subqueries.
Vistas inline: Ia vista inline es un subquery integrado dentro dela cláusula FROM de una
instrucción SELECT, la cual a propósito es también un subquery. Los valores pueden ser
pasados desde la vista inline al query que hacerla llamada, o subquery.

¿DONDE PUEDEN UTILIZARSE LOS SUBQUERIES?
Los subqueries pueden utilizarse casi donde quiera en una instrucción SQL, en cualquier
comando SQL donde una expresión pueda ser puesta. Siguiendo la lista de decláusulas de la
instrucción SQL en la cual se puede utilizar un subquery tenemos:










Cláusula SELECT.
Cláusula WHERE
Cláusula ORDER BY
Cláusula FROM (Inline view)
Cláusula VALUES de una instrucción INSERT
Instrucción UPDATE en la cláusula SET.
Instrucción CASE.
Parámetros de funciones.
Cláusula SPREADSHEET.

Francisco J. Carrillo Z.
Ene 2010

1

Versión 3.0 Bases de Datos II
Laboratorio 06 Subqueries

Ingeniería en Sistemas Computacionales

CONDICIONES DE COMPARACIÓN Y SUBQUERIES
Muchas condiciones de comparación son aplicables a subqueries. El diagrama de sintaxis se
muestra en la siguiente figura:

Simple
Like
Membership
Existencia
Rango
Grupo

( subquery ) [ = | != ] ( subquery )
(subquery) LIKE (subquery)
(subquery) [NOT] IN(subquery)
[NOT] EXISTS (subquery)
(subquery) BETWEEN (subquery) AND (subquery)
(subquery) { = | != | > | < | >= | , (select avg(proExistencia) from productos)



Subqueries de múltiples columnas
select a.proNumero, a.prodescripcion, O.ordFecha
from ordenesCompra O,(select proNumero, prodescripcion from productos where prodescripcion like
'%Acido%') a, detalleOrdenes DO
wherea.proNumero=DO.proNumero and O.OrdNumero = DO.ordNumero



Subqueries regulares contra correlacionados
update productos P
set proacumulado = (select sum(detOrdCantidad * propreciouni) from detalleOrdenes DO
where P.proNumero = DO.proNumero)



Subqueries anidados

a) select pronumero, extract(month from ordfecha) as MES,sum(detordcantidad *
propreciouni) total from ordenesCompra E,...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Que es una base de datos y tipos de base de datos
  • Bases de datos y usuarios de bases de datos
  • Base De Datos
  • Base De Datos
  • Base de datos
  • Base De Datos
  • Base de datos
  • Bases de datos

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS