By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
CREATE TABLE Users (ID int, Username varchar(100), isActive TINYINT);
CREATE TABLE UserActions (ID int, User_ID int, Type varchar(100), ActionDate Date);
INSERT INTO
Users(ID, Username, isActive)
VALUES
(1, 'Ben Busy',1),
(2, 'Lui Lazy',1),
(3, 'Emmy Eager',1),
(4, 'Lana Later',1);
INSERT INTO
UserActions(ID, User_ID, Type, ActionDate)
VALUES
(1, 1, 'Login', '2021-01-01'),
(2, 3, 'Login', '2021-01-02'),
(3, 1, 'Login', '2021-01-02'),
(4, 1, 'Login', '2021-01-03');
SELECT * FROM Users u
WHERE NOT EXISTS
(SELECT user_id FROM UserActions ua
WHERE (ua.Type = "Login" OR ua.Type = NULL) AND u.ID=ua.user_id);
UPDATE Users u
SET u.IsActive=0
WHERE NOT EXISTS
(SELECT user_id FROM UserActions ua
WHERE (ua.Type = "Login" OR ua.Type = NULL) AND u.ID=ua.user_id);
SELECT * FROM Users;
ID | Username | isActive |
---|---|---|
2 | Lui Lazy | 1 |
4 | Lana Later | 1 |
ID | Username | isActive |
---|---|---|
1 | Ben Busy | 1 |
2 | Lui Lazy | 0 |
3 | Emmy Eager | 1 |
4 | Lana Later | 0 |