ANY e ALL
Confronta un valore con ogni riga restituita da una sottoquery. ALL significa ogni riga; ANY significa almeno una.
Sintassi
WHERE column operator ALL (SELECT ...)WHERE column operator ANY (SELECT ...)
- L'operatore è un confronto come >, < o =.
- = ANY è uguale a IN. > ALL e > ANY non hanno un equivalente IN.
Esempio
SELECT name FROM products WHERE unit_price > ALL (SELECT unit_price FROM products WHERE category = 'drinks');
Prodotti più cari di ogni bevanda: le due fette di torta e il Sourdough loaf.
Tabelle usate: products. Provalo in una lezione qui sotto.
Errori comuni
- ALL di una sottoquery vuota è vero per ogni riga, il che è raramente ciò che volevi. ANY di una sottoquery vuota non è mai vero.