UPDATE
New, New, JOIN New and New
Syntax
UPDATE table SET column1=value1 [, column2=value2 ...] [WHERE conditions] [ORDER BY ...] [LIMIT count];
Parameters
| Parameters | Description | Examples | Level |
|---|---|---|---|
SET |
New and | UPDATE users SET status = 0 WHERE id = 100; |
Common |
WHERE |
New(!) | UPDATE orders SET status = 2 WHERE order_no = 'ORD20260001'; |
Common |
LIMIT |
New | UPDATE orders SET status = -1 WHERE status = 0 LIMIT 100; |
Advanced |
JOIN |
New | UPDATE orders o JOIN users u ON o.user_id = u.id SET o.status = -1 WHERE u.status = 0; |
Advanced |
CASE WHEN |
UPDATE products SET price = CASE WHEN stock > 100 THEN price * 0.9 ELSE price END; |
Advanced |
Examples
New
UPDATE users
SET email = 'newemail@example.com',
updated_at = NOW()
WHERE id = 1001;WHERE, New
New
UPDATE orders
SET status = -1,
updated_at = NOW()
WHERE status = 0
AND created_at < DATE_SUB(NOW(), INTERVAL 30 MINUTE);30
JOIN New
UPDATE products p JOIN categories c ON p.category_id = c.id SET p.status = 0 WHERE c.name = '';
New
New()
-- SELECT COUNT(*) FROM orders WHERE status = 0 AND created_at < '2026-01-01'; -- New UPDATE orders SET status = -1 WHERE status = 0 AND created_at < '2026-01-01';
SELECT
Common Errors
ERROR 1175: You are using safe update mode (SET sql_safe_updates=1)UPDATE WHERE. : SET sql_safe_updates = 0;
ERROR 1062 (23000): Duplicate entry for keyNew,
Tips
- WHERE UPDATE
- New, : UPDATE.. LIMIT 1000
- sql_safe_updates New