MySQL Tutorial
In MySQL, the ANY
and ALL
operators are used in combination with subqueries to perform comparisons. They allow you to compare a value to a set of values returned by a subquery.
ANY
→ Returns TRUE if any one value from the subquery satisfies the condition.ALL
→ Returns TRUE if all values from the subquery satisfy the condition.SELECT column_name FROM table_name WHERE column_name operator ANY ( SELECT column_name FROM another_table WHERE condition );
SELECT column_name FROM table_name WHERE column_name operator ALL ( SELECT column_name FROM another_table WHERE condition );
operator
→ Can be =, !=, >, <, >=, <=
.ANY
→ Condition is true if at least one value matches the comparison.ALL
→ Condition is true if all values match the comparison.We have two tables:
student_id |
name |
gender |
city |
age |
score |
course_id |
|
phone_number |
---|---|---|---|---|---|---|---|---|
1 |
Alice |
Female |
Delhi |
20 |
85 |
101 |
NULL |
1234567890 |
2 |
Bob |
Male |
Mumbai |
22 |
75 |
NULL |
bob@email.com |
NULL |
3 |
Charlie |
Male |
Delhi |
21 |
95 |
102 |
NULL |
NULL |
4 |
David |
Male |
Bangalore |
23 |
65 |
101 |
david@email.com |
NULL |
5 |
Eve |
Female |
Mumbai |
20 |
80 |
103 |
NULL |
NULL |
6 |
Frank |
Male |
Delhi |
22 |
90 |
103 |
NULL |
NULL |
7 |
Alice |
Female |
Mumbai |
19 |
60 |
102 |
NULL |
NULL |
course_name |
course_name |
---|---|
101 |
Math |
102 |
Science |
103 |
History |
104 |
English |
The following SQL statement find courses where any student scored below 70.
Try it yourself
course_name |
---|
Math |
Science |
The following SQL statement find courses where all students scored above 70.
Try it yourself
course_name |
---|
course_id
values where students scored above 70.