https://www.youtube.com/watch?v=Oz8uzN_7MuM&list=PLavw5C92dz9Hxz0YhttDniNgKejQlPoAn&index=18

-- Create the employees table
DROP TABLE IF EXISTS employees;
CREATE TABLE employees (
    id INT,
    name VARCHAR(50)
);

-- Insert data into the employees table
INSERT INTO employees (id, name) VALUES
(1, 'Lewis'),
(2, 'Max'),
(3, 'Charles'),
(4, 'Sainz');

-- Create the events table
DROP TABLE IF EXISTS events;
CREATE TABLE events (
    event_name VARCHAR(50),
    emp_id INT,
    dates DATE
);

-- Insert data into the events table
INSERT INTO events (event_name, emp_id, dates) VALUES
('Product launch', 1, STR_TO_DATE('01-03-2024', '%d-%m-%Y')),
('Product launch', 3, STR_TO_DATE('01-03-2024', '%d-%m-%Y')),
('Product launch', 4, STR_TO_DATE('01-03-2024', '%d-%m-%Y')),
('Conference', 2, STR_TO_DATE('02-03-2024', '%d-%m-%Y')),
('Conference', 2, STR_TO_DATE('03-03-2024', '%d-%m-%Y')),
('Conference', 3, STR_TO_DATE('02-03-2024', '%d-%m-%Y')),
('Conference', 4, STR_TO_DATE('02-03-2024', '%d-%m-%Y')),
('Training', 3, STR_TO_DATE('04-03-2024', '%d-%m-%Y')),
('Training', 2, STR_TO_DATE('04-03-2024', '%d-%m-%Y')),
('Training', 4, STR_TO_DATE('04-03-2024', '%d-%m-%Y')),
('Training', 4, STR_TO_DATE('05-03-2024', '%d-%m-%Y'));

Pasted image 20241119144801.png

SELECT e.name AS EMPLOYEE_NAME,COUNT(DISTINCT event_name) AS NO_OF_EVENTS 
FROM events ev
JOIN Employees e ON ev.emp_id = e.id
GROUP BY e.name
HAVING NO_OF_EVENTS = (SELECT COUNT(DISTINCT event_name) FROM events)