Blog de Gonzalo

OPERADOR ANY EN MYSQL

Hace poco descubrí que la existencia del operador any en mysql. El operador ANY, también se puede usar el operador SOME, permite comparar un valor, usando los comparadores de "<, >, =, <>", contra una lista de valores, como se hace usando el operador IN. La lista de valores debe ser un conjunto multilínea de datos, pero de una sola columna. Es decir ANY significa que, para que una fila de la consulta externa cumpla la condición especificada, la comparación se debe cumplir para al menos un valor de los devueltos por la subconsulta.
Un ejemplo sería: SELECT nombre_producto FROM producto WHERE productoID = ANY (SELECT productoID FROM catalogo WHERE cantidad > 50);. Se obtienen productos que tienen un stock de más de 50.
El operador ANY también se puede usar en la cláusula HAVING.
Os invito a leer el artículo sobre el operador all en mysql.
Para usar este operador se recomienda usar la función de mysql group concat