Using subqueries
In this section, we will talk about subqueries. Subqueries can be described as nested queries – we can nest a query inside another query using parentheses. Subqueries can return a single value or a recordset, just like regular queries. We will start by introducing subqueries using the IN/NOT IN
operator.
Subqueries and the IN/NOT IN condition
Let’s start with the IN
operator; we can use the IN
operator inside a where
clause instead of using multiple OR
conditions. For example, if you wanted to search for all categories that have the value pk=1
or the value pk=2
, you would have to perform the following statement:
forumdb=> select * from categories where pk=1 or pk=2;
pk | title | description
----+----------+------------------------------
1 | Database | Database related discussions
2 | Unix | Unix and Linux discussions
(2 rows)
Another way to reach the same outcome is the following:
forumdb=> select ...