Está usted en Indice > Construcción > Lenguajes > SQL > Lecciones y Paso a Paso > EXISTS y ALL en SQL
Construcción
Maletín
Utilidades
Cursos
Promoción
Rentabilidad
Zona Novatos
Foros
Acceso a tu cuenta

EXISTS y ALL en SQL

EXISTS usa una subconsulta como condición, donde la condición es verdadera si la subconsulta devuelve alguna fila, y falsa si la subconsulta no devuelve ninguna fila; esta es una característica no intuitiva con sólo algunos usos. Sin embargo, si un empleado quiere ver la lista de Propietarios sólo si hay sillas disponibles, intenta:

SELECT NOMBREPROPIETARIO, APELLIDOPROPIETARIO
FROM PROPIETARIOS_ANTIGÜEDADES
WHERE EXISTS
    (SELECT *
     FROM ANTIGÜEDADES
     WHERE PRODUCTO = 'Silla');

Si hay alguna silla en la columna Antigüedades, la subconsulta devolverá una o varias filas, haciendo la cláusula EXISTS verdadera, haciendo que SQL liste los antigüos propietarios. Si no ha habido sillas, ninguna fila será devuelta por la subconsulta.

ALL es otra construcción poco usual , como las consultas ALL pueden ser usadas con diferentes y simples métodos, veamos un ejemplo de consulta:

SELECT ID_COMPRADOR, PRODUCTO
FROM ANTIGÜEDADES
WHERE PRECIO = ALL
    (SELECT PRECIO
     FROM ANTIGÜEDADES);

Esto devolverá el precio de producto más alto (o más de un producto si hay un empate), y su comprador. La subconsulta devuelve una lista de todos los precios de la tabla Antigüedades, y la consulta de salida va fila por fila de la tabla Antigüedades y si el precio es mayor o igual a todos (o ALL) precios en la lista, es listado, dando el precio del producto más caro. La razón de "=" es que el mayor precio en la lista puede ser igual al de la lista, ya que este producto está en la lista de precios.




Autor: Universidad de València
http://mural.uv.es/gerloal/cap4.htm

Usuarios que han visto este tema también han visto...

- Bases de Datos Externas en SQL
- Tipos de datos en SQL
- Arquitectura de las bases de datos
- Omitir los Permisos de Ejecución en SQL


Versión imprimible - Versión imprimible de este documento
Enviar e-mail - Enviar por e-mail este documento
Publicidad

Información legal | Política de Privacidad | Contacte con nosotros

Otro proyecto de Factoría de Internet. Copyright© 2003-2008 Factoría de Internet S.L.. Todos los derechos reservados.


Página generada el 04-07-2008 a las 17:49:09