Languages
[Edit]
EN

MySQL - Update multiple rows at once

0 points
Created by:
maxsior322
227

In this article, we would like to show you how to update multiple rows at once in MySQL.

Quick solution:

UPDATE `table_name`
SET `column1` = value1, `column2` = value2, `columnN` = valueN
WHERE condition;

Practical example

To show you how to update multiple rows at once, we will use the following users table:

MySQL - example data used to count rows with NULL values
MySQL - example data used to count rows with NULL values

Note:

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

Example

In this example, we will update department_id and salary value of the first three users from the users table.

Query

UPDATE `users`
SET `department_id` = 5, `salary` = 6000
WHERE `id` <= 3;

or

UPDATE `users`SET `department_id` = 5, `salary` = 6000 WHERE `id` = 1;
UPDATE `users`SET `department_id` = 5, `salary` = 6000 WHERE `id` = 2;
UPDATE `users`SET `department_id` = 5, `salary` = 6000 WHERE `id` = 3;

Result:

MySQL - update multiple rows at once - result
MySQL - update multiple rows at once - 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', NULL, '4000'),
	('Simon', 'Collins', 4, '4000'),
	('Taylor', 'Martin', 2, '2000'),
	('Andrew', 'Thompson', NULL, '2000');

MySQL - Problems

MySQL - Update multiple rows at once
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