ANY e ALL
Compare um valor com cada linha que uma subconsulta devolve. ALL significa cada linha; ANY significa pelo menos uma.
Sintaxe
WHERE column operator ALL (SELECT ...)WHERE column operator ANY (SELECT ...)
- O operador é uma comparação como >, < ou =.
- = ANY é o mesmo que IN. > ALL e > ANY não têm equivalente em IN.
Exemplo
SELECT name FROM products WHERE unit_price > ALL (SELECT unit_price FROM products WHERE category = 'drinks');
Produtos mais caros que cada bebida: as duas fatias de bolo e o Sourdough loaf.
Tabelas usadas: products. Experimente em uma lição abaixo.
Erros comuns
- ALL de uma subconsulta vazia é verdadeiro para cada linha, o que raramente é o que você queria. ANY de uma subconsulta vazia nunca é verdadeiro.