Languages
[Edit]
EN

MySQL - COUNT IF example

0 points
Created by:
martineau
450

In this article, we would like to show you COUNT IF statement example in MySQL.

Quick solution:

SELECT COUNT(IF(condition, 1, NULL)) AS 'alias_name';

Note:

Go to this article to read more about IF() function and its parameters.

Practical example

To show you how IF() function works, we will use the following users table:

MySQL - example data used to explain IF() function
MySQL - example data used to explain IF() function

Note:

At the end of this article you can find database preparation SQL queries.

Example

In this example, we will count the number of users whose salary is high, average or low.

Query

SELECT 
    COUNT(IF(`salary` = 6000, 1, NULL)) AS 'high_salary',
    COUNT(IF(`salary` = 4000, 1, NULL)) AS 'average_salary',
    COUNT(IF(`salary` = 2000, 1, NULL)) AS 'low_salary'
FROM
    `users`;

Result:

MySQL - COUNT IF example - result
MySQL - COUNT IF example - result

Database preparation

create_tables.sql file:

CREATE TABLE `users` (
	`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
	`name` VARCHAR(50) NOT NULL,
	`surname` VARCHAR(50) NOT NULL,
	`department_id` INT(10) UNSIGNED,
    `salary` DECIMAL(15,2) NOT NULL,
	PRIMARY KEY (`id`)
);

insert_data.sql file:

INSERT INTO `users`
	( `name`, `surname`, `department_id`, `salary`)
VALUES
	('John', 'Stewart', 1, '6000'),
	('Chris', 'Brown', 2, '6000'),
	('Kate', 'Lewis', 3, '4000'),
	('Ailisa', 'Gomez', NULL, '4000'),
	('Gwendolyn', 'James', 2, '4000'),
	('Simon', 'Collins', 4, '4000'),
	('Taylor', 'Martin', 2, '2000'),
	('Andrew', 'Thompson', NULL, '2000');

MySQL - functions

Native Advertising
🚀
Get your tech brand or product in front of software developers.
For more information Contact us
Dirask - we help you to
solve coding problems.
Ask question.

❤️💻 🙂

Join