UNA SUBCONSULTA NO ES MAS QUE UNA
CONSULTA DENTRO DE OTRA CONSULTA LAS
CUALES UTILIZAN LAS SENTENCIA SELECT
JUNTO CON LAS CLAUSULAS WHERE Y
HAVING PARA INDICAR CONDICIONES
LAS SUBCONSULTAS SE DIVIDEN
EN TES GRUPOS DEACUERDO AL
NUMERO DE FILAS Y COLUMNAS
QUE DEVUELVEN, LOS CUALES SON:
SUBCONSULTAS QUE
DEVUELVEN UN UNICO VALOR
(UNA FILA CON UNA UNICA
COLUMNA)
EL VALOR DEVUELTO POR LA SUBCONSULTA
PUEDE SER USADO COMO UN VALOR NORMAL
EN UNA EXPRECION U COMPARACIÓN, PUEDE
SER USADA PRACTICAMENTE EN CUALQUIER
LUGAR DE UNA CONSULTA PRINCIPAL AUNQUE
LOS LUGARES MAS COMUNES SON LAS
CLAUSULAS WHERE Y HAVING
SUBCONSULTAS QUE DEVUELVEN
UNA UNICA FILA CON MAS DE UNA
COLUMNA
UNA SUBCONSULTA QUE DEVUELVE UNA UNICA
FILA ES USADA COMUNMENTE EN PREDICADOS, EN
EL WHERE O EN EL HAVING,, SU FORMA DE USO ES
(EXP1,EXP2..) Y SE USA EL OPERADOR
(SUBCONSULTA)
SUBCONSULTAS QUE DEVUELVEN UN
CONJUNTO DE FILAS ES DECIR (CERO UNA
O VARIAS FILAS)
EN ESTE TIPO DE CONSULTAS NO SE PUEDEN USAR LOS
OPERADORES TRADICONALES YA QUE ESTOS SOLO
SIRVEN PARA COMPARAR UN VALOR CON OTRO Y NO
UN VALOR CON MUCHOS QUE ES A DONDE VA ESTE
TIPO DE CONSULTA POR LO CUAL DEBEMOS UTILIZAR
OPERADORES LOGICOS.
¿CUANDO SE USAN?
UNA SUBCONSULTA SE USA CUANDO
SE QUIERE EXTRAER INFORMACION
ESPECIFICA DE UNA O VARIAS TABLAS
QUE CONFORMAN UNA BASE DE
DATOS CON MILES DE REGISTROS.
¿PARA QUE SIRVEN?
SIRVEN PARA EXTRAER DETERMINADA INFORMACION
VALIOSA Y REALIZAR ALGUN TIPO DE CALCULO SON
TENER QUE REVISAR TABLA POR TABLA EN SOLO UNA
OPERACION Y ASI PODER TOMAR DECICIONES,
COMPONENTES DE UNA SUBCONSULTA
OPERADORES
IN
ESTE OPERADOR COMPRUEBA LA
PERTENENCIA AUN CONJUNTO, LA
OPERACION A IN B DEVUELVE CIERTO SI A
PERTENECE AL CONJUNTO B
EXIST
LA OPERACION EXIST B DEVUELVE CIERTO SI EL
CONJUNTO B CONTIENE ALMENOS UN
ELEMENTO DE LA FILA
ALL
LA OPERACION A>=ALL(B) DEVUELVE
CIERTO SI A ES MAYOR O IGUAL A TODOS
LOS ELEMENTOS DEL CONJUNTO B
ANY
LA OPERACION MAYOR QUE ANY(B) DEVUELVE
CIERTO SI A ES MAYOR QUE ALGUNO DE LOS
ELEMENTOS DEL CONJUNTO B
SOME
SOME ES EQUIVALENTE AL ESTANDAR DE SQL DE ANY, SE
UTILIZA ESTE TIPO DE COMPARACION CUANDO
QUEREMOS COMPARAR EL RESULTADO DE LA EXPRECION
CON UNA LISTA DE VALORES Y ACTUAR EN FUNCION DEL
MODIFICADOR EMPLEADO