SQLize Online / PHPize Online  /  SQLtest Online

A A A
Share      Blog   Popular
Copy Format Clear
CREATE TABLE IF NOT EXISTS `users` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `name` VARCHAR(64) NOT NULL, PRIMARY KEY (`id`) ); INSERT INTO `users` VALUES (1, 'User 1'), (2, 'User 2'), (3, 'User 3'); CREATE TABLE IF NOT EXISTS `reviews` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `user_id` INT UNSIGNED NOT NULL, FOREIGN KEY (`user_id`) REFERENCES `users` (`id`), PRIMARY KEY (`id`) ); INSERT INTO `reviews` (`user_id`) VALUES (1), (2), (2); -- users without reviews SELECT * FROM `users` WHERE NOT EXISTS (SELECT 1 FROM `reviews` WHERE `reviews`.`user_id` = `users`.`id`); -- users eith reviews SELECT * FROM `users` WHERE EXISTS (SELECT 1 FROM `reviews` WHERE `reviews`.`user_id` = `users`.`id`); -- reviews count per user SELECT `users`.`id`, `users`.`name`, COUNT(`reviews`.`id`) AS `reviews_count` FROM `users` LEFT JOIN `reviews` ON `reviews`.`user_id` = `users`.`id` GROUP BY `users`.`id`, `users`.`name`;
Stuck with a problem? Got Error? Ask ChatGPT!
Copy Clear