INSERT in MySQL
Single Row
INSERT INTO users (username, email, created_at)
VALUES ('bob', 'bob@example.com', NOW());
Multiple Rows
INSERT INTO products (name, price, category_id) VALUES
('Laptop', 999.99, 1),
('Phone', 599.99, 1),
('Desk', 299.99, 2);
INSERT IGNORE
-- Skip if duplicate key
INSERT IGNORE INTO users (email) VALUES ('existing@example.com');
INSERT ... SELECT
INSERT INTO archive_orders (user_id, amount, created_at)
SELECT user_id, amount, created_at FROM orders
WHERE created_at < '2023-01-01';
ON DUPLICATE KEY UPDATE
INSERT INTO page_views (page, views) VALUES ('home', 1)
ON DUPLICATE KEY UPDATE views = views + 1;