YogeshChauhan.com
Everything you need to know about ANY, SOME and ALL Operators in Postgres
January 8, 2021

ANY/SOME

Syntax:


expression operator ANY (subquery)
expression operator SOME (subquery)

The ANY/SOME operator compares a value to a set of values returned by a subquery.

The right-hand side is a parenthesized subquery, which must return exactly one column.

The left-hand expression is evaluated and compared to each row of the subquery result using the given operator, which must yield a Boolean result.

The result of ANY is “true” if any true result is obtained. The result is “false” if no true result is found (including the special case where the subquery returns no rows).

SOME is a synonym for ANY. IN is equivalent to = ANY.

If there are no successes and at least one right-hand row yields null for the operator’s result, the result of the ANY construct will be null, not false.

We can use any of these operators:

OperatorDescription
<less than
>greater than
<=less than or equal to
>=greater than or equal to
=equal
<> or !=not equal

Detailed Syntax:


SELECT column(s)
FROM table
WHERE column operator ANY
(SELECT column FROM table WHERE condition);

Postgres ANY Operator Example

I am using the database for all examples. It is available on my Github public repo


SELECT product_name
FROM products
WHERE product_id = ANY (SELECT product_id FROM order_details 
						WHERE quantity = 10);

//Output
product_name
"Chai"
"Chang"
"Chef Anton's Cajun Seasoning"
"Uncle Bob's Organic Dried Pears"
...
...
60 rows

Another Postgres ANY Operator Example:


SELECT product_name
FROM products
WHERE product_id = ANY (SELECT product_id FROM order_details 
						WHERE quantity > 99);

//Output
product_name
"Chai"
"Chang"
"Chef Anton's Cajun Seasoning"
"Uncle Bob's Organic Dried Pears"
...
...
20 rows

As, I mentioned earlier, IN is equivalent to = ANY.

So, if we write down above query using IN, we’ll get the same results.

Postgres IN Operator Example:


SELECT product_name
FROM products
WHERE product_id IN (SELECT product_id FROM order_details 
						WHERE quantity > 99);

//Output
product_name
"Chai"
"Chang"
"Chef Anton's Cajun Seasoning"
"Uncle Bob's Organic Dried Pears"
...
...
20 rows

<> ANY operator is different from NOT IN

Postgres <> ANY Operator Example:


SELECT product_name
FROM products
WHERE product_id <> ANY (SELECT product_id FROM order_details 
						WHERE quantity > 99);

//Output
product_name
"Chai"
"Chang"
"Aniseed Syrup"
...
...
77 rows

Postgres NOT IN Example:


SELECT product_name
FROM products
WHERE product_id NOT IN (SELECT product_id FROM order_details 
						WHERE quantity > 99);

//Output
product_name
"Chai"
"Aniseed Syrup"
"Chef Anton's Cajun Seasoning"
...
...
57 rows

 ALL

Syntax:


expression operator ALL (subquery);

The right-hand side is a parenthesized subquery, which must return exactly one column.

The left-hand expression is evaluated and compared to each row of the subquery result using the given operator, which must yield a Boolean result.

The result of ALL is “true” if all rows yield true (including the special case where the subquery returns no rows). The result is “false” if any false result is found.

NOT IN is equivalent to <> ALL.

If there are no failures but at least one right-hand row yields null for the operator’s result, the result of the ALL construct will be null, not true. 

Detailed Syntax:


SELECT column(s)
FROM table
WHERE column operator ALL
(SELECT column FROM table WHERE condition);

Postgres ALL Operator Example


SELECT product_name
FROM products
WHERE product_id = ALL (SELECT product_id FROM order_details 
						WHERE quantity = 10);

//Output 
product_name

0 rows

Sources

dreamhost

Leave a Reply

Most Read

#1 How to check if radio button is checked or not using JavaScript? #2 How to set opacity or transparency using CSS? #3 Pagination in CSS with multiple examples #4 How to make HTML form interactive and using CSS? #5 Solution to “TypeError: ‘x’ is not iterable” in Angular 9 #6 How to uninstall Cocoapods from the Mac OS?

Recently Posted

Mar 3 How to embed YouTube or other video links in WordPress? Mar 3 How to change the Login Logo in WordPress? Mar 3 substring() Method in JavaScript Mar 3 Window setInterval() Method in JavaScript Mar 2 How to zoom an element on hover using CSS? Mar 2 the box-sizing property in CSS

You might also like these

The Drupal flowDrupalAggregate Functions Examples in Postgres for BeginnersPostgresWordPress: How to display slider repeater fields in ACF?WordPressHow to get category name using post id in WordPress?WordPressHow to add a ribbon inside a container using CSS?CSSPagination in CSS with multiple examplesCSS