Skip to main content
Log inGet a demo
Logical operators

SQL IN

What is SQL IN?

The SQL IN operator is used to filter data based on a specified list of values. It allows you to select rows where a particular column's value matches any of the values in the provided list. The IN operator simplifies the process of filtering data for multiple conditions by avoiding the need for multiple OR conditions.

When you would use it

You would use the SQL IN operator when you need to filter data from a table based on whether a column's value matches any of a specified list of values. This is especially useful when you want to retrieve data that satisfies one or more specific conditions from a large dataset.

Syntax

The syntax for using the IN operator is as follows:

SELECT columns
FROM table_name
WHERE column_name IN (value1, value2, ...);
  • columns: The columns you want to retrieve in the query.
  • table_name: The name of the table containing the data.
  • column_name: The name of the column you want to filter based on.
  • (value1, value2, ...): A list of values that you want to compare with the values in the specified column. You can include multiple values separated by commas.

Parameter values

  • columns: The columns you want to retrieve in your query.
  • table_name: The name of the table where the data is stored.
  • column_name: The name of the column you want to filter based on.
  • (value1, value2, ...): A list of values you want to compare with the column's values.

Example query

Suppose we have a table named "employees" with columns "employee_id" and "department." We want to retrieve information for employees in either the "Sales" or "Marketing" departments:

SELECT employee_id, department
FROM employees
WHERE department IN ('Sales', 'Marketing');

In the above query, we use the IN operator to filter employees based on their department, matching either "Sales" or "Marketing."

Example table response

Assuming the "employees" table contains the following data:

| employee_id | department |
|------------ |------------ |
| 1          | Sales      |
| 2          | Marketing  |
| 3          | HR         |
| 4          | Sales      |
| 5          | Finance    |

The query mentioned earlier would return the following result:

| employee_id | department |
|------------ |------------ |
| 1          | Sales      |
| 2          | Marketing  |
| 4          | Sales      |

This result includes employees in the "Sales" and "Marketing" departments.

Use cases

  • Filtering data based on multiple values or conditions in a single query.
  • Simplifying complex filtering by avoiding multiple OR conditions.
  • Selecting rows that match specific criteria from a dataset.

SQL languages this is available for

The SQL IN operator is a standard SQL feature and is available in most relational database management systems (RDBMS) that support SQL. This includes popular RDBMS like MySQL, PostgreSQL, Oracle, SQL Server, and SQLite. The specific syntax and behavior may vary slightly between database systems, but the fundamental functionality remains the same.


Keep reading

SQL LIKE

Read article

SQL BETWEEN

Read article

SQL IS NULL

Read article

Ready to put your SQL knowledge to work?

Practice writing SQL to call data from the warehouse and sync it into Google Sheets in this 5 minute interactive demo.

Hightouch Audiences user interface.