Los operadores ANY y ALL se usan con una cláusula WHERE o HAVING. El operador ANY se utiliza cuando se quiere seleccionar registros si alguno de los valores de subconsulta cumple la condición.
Sintaxis ANY en SQL
El operador ANY devuelve verdadero si alguno de los valores de subconsulta cumple la condición.
SELECT nombre_columna(s) FROM nombre_tabla WHERE nombre_columna operator ANY (SELECT nombre_columna FROM nombre_tabla WHERE condicion);
Ejemplos para utilizar el operador ANY
La siguiente instrucción SQL devuelve verdadero y enumera los nombres de los productos si encuentra algún registro en la tabla Catálogo en las que Cantidad = 20:
SELECT Nombre_Producto FROM Producto WHERE ProductoID = ALL (SELECT ProductoID FROM Catalogo WHERE Cantidad = 20);
La siguiente instrucción SQL devuelve verdadero y enumera los nombres de los productos si encuentra algún registro en la tabla de
Catálogo que tenga: Cantidad> 50:
SELECT Nombre_Producto FROM Producto WHERE ProductoID = ANY (SELECT ProductoID FROM Catalogo WHERE Cantidad > 50);
Sintaxis ALL en SQL
El operador ALL selecciona los valores si todos los registros de subconsulta cumplen la condición.
SELECT nombre_columna(s) FROM nombre_tabla WHERE nombre_columna operator ALL (SELECT nombre_columna FROM nombre_tabla WHERE condicion);
Ejemplo del operador ALL en SQL:
La siguiente declaración SQL devuelve verdadero y enumera los nombres de productos si todos los registros en la tabla Catalogo tienen Cantidad = 15:
SELECT Nombre_Producto FROM Producto WHERE ProductoID = ALL ( SELECT ProductoID FROM Catalogo WHERE Cantidad = 15);