🔥Limited Offer: Get 50% OFFon AI & Full Stack Courses🔥
Back to SQL Notes
Topic #24

SQL In


The SQL IN Operator

The IN operator is used in the WHERE clause to check if a specified column's value matches any value within a provided list.

The IN operator functions as a shorthand for multiple OR conditions, making queries shorter and more readable.

The following SQL uses the IN operator to select all customers from Germany, France, or UK:

Example

SELECT * FROM Customers

 WHERE Country IN ('Germany', 'France', 'UK');

The following SQL uses multiple OR conditions to select all customers from Germany, France, or UK (same result, but longer code):

Example

SELECT * FROM Customers

WHERE Country = 'Germany' OR Country = 'France' OR Country = 'UK';

Syntax

<p><code class="sqlHigh">
SELECT <em>column_name(s)</em><br/>
FROM <em>table_name</em><br/>
WHERE <em>column_name</em> IN (<em>value1</em>,<em> value2</em>, ...);
</code></p>

Demo Database

Below is a selection from the Customers table used in the examples:

CustomerID CustomerName ContactName Address City PostalCode Country
1 Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4 Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden

The NOT IN Operator

By using the NOT IN operator, you return all records that are NOT any of the values in the list.

Example

SELECT * FROM Customers

 WHERE Country NOT IN ('Germany', 'France', 'UK');

IN (SELECT)

You can also use IN with a subquery in the WHERE clause.

With a subquery you can return all records from the main query that are present in the result of the subquery.

The following SQL returns all customers who also have an order in the "Orders" table:

Example

SELECT * FROM Customers

WHERE CustomerID IN (SELECT CustomerID FROM Orders);

NOT IN (SELECT)

The result in the example above returned 74 records, that means that there are 17 customers that haven't placed any orders.

Let us check if that is correct, by using the NOT IN operator.

The following SQL returns all customers who do NOT have any orders in the "Orders" table:

Example

SELECT * FROM Customers

WHERE CustomerID NOT IN (SELECT CustomerID FROM Orders);

Want to go beyond the notes?

Join CodingNow 2.0's SQL course — live mentorship, real projects, and 100% placement support.

Enroll Now — Free Demo Available

SQL In – FAQs

Quick answers about learning SQL In in SQL.

This free note from CodingNow 2.0 explains SQL In in SQL — concept, syntax and worked code examples you can copy, run and revise before interviews.
Yes. Every SQL topic on CodingNow 2.0, including SQL In, is 100% free with no signup required.
With focused practice, most students grasp SQL In in 1–3 days from these notes; pairing it with CodingNow 2.0's mentor-led course takes you to job-ready depth faster.
Use the code examples in this note, then ask doubts for free on the CodingNow 2.0 Community (/community) — expert instructors answer within 24 hours.
WhatsApp
Call NowEnroll Now