Skip to main content
Log inGet a demo
Back to SQL Dictionary
Basic statements and clauses

SQL IF

What is SQL IF?

The SQL IF statement is a conditional control statement that allows you to execute different SQL statements based on a specified condition. It is used to perform actions conditionally within SQL queries.

When you would use it

You would use the SQL IF statement when you need to make decisions in your SQL queries based on specific conditions. This can be helpful for creating dynamic queries that respond to changing data or user input.

Syntax

The basic syntax of the SQL IF statement is as follows:

IF (condition, statement_if_true, statement_if_false)
  • condition: The Boolean condition to evaluate.
  • statement_if_true: SQL statement(s) to execute if the condition is true.
  • statement_if_false: SQL statement(s) to execute if the condition is false.

Parameter values

  • condition: A Boolean expression that evaluates to either true or false.
  • statement_if_true: SQL statement(s) to execute if the condition is true. This can include SELECT, INSERT, UPDATE, DELETE, and other SQL statements.
  • statement_if_false: SQL statement(s) to execute if the condition is false. It can also include any valid SQL statements.

Example query

Suppose we have a table named "products" with columns "product_id" and "price." We want to categorize products as "Expensive" if the price is greater than $100, and "Affordable" otherwise:

SELECT product_id, price, 
  IF(price > 100, 'Expensive', 'Affordable') AS category
FROM products;

In the above query, we use the SQL IF statement to categorize products based on their price.

Example table response

Assuming the "products" table contains the following data:

| product_id | price   |
|------------|-------- |
| 1         | 75.00   |
| 2         | 120.00  |
| 3         | 95.50   |
| 4         | 150.00  |

The query mentioned earlier would return the following result:

| product_id | price   | category   |
|------------|-------- |------------|
| 1         | 75.00   | Affordable |
| 2         | 120.00  | Expensive  |
| 3         | 95.50   | Affordable |
| 4         | 150.00  | Expensive  |

This categorizes products as "Expensive" if the price is greater than $100 and "Affordable" otherwise.

Use cases

  • Dynamic categorization or labeling of data based on specific conditions.
  • Handling conditional logic within SQL queries, e.g., changing query behavior based on user input or business rules.

SQL languages this is available for

The SQL IF statement is not a standard feature in all SQL databases. Its availability and syntax may vary between different database systems. Some databases use different conditional constructs like CASE WHEN. Popular database systems such as MySQL, PostgreSQL, and SQL Server have their own ways of implementing conditional logic. It's important to refer to the documentation of your specific database system to understand how conditional statements are implemented.

Related

SQL HAVING

SQL WITH

SQL Aliases

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.