CREATE TABLE Accounts (
id INT PRIMARY KEY,
name VARCHAR(255)
);
CREATE TABLE Logins (
id INT,
login_date DATE,
FOREIGN KEY (id) REFERENCES Accounts(id)
);
-- Inserts for Accounts table
INSERT INTO Accounts (id, name) VALUES (1, 'Winston');
INSERT INTO Accounts (id, name) VALUES (7, 'Jonathan');
-- Inserts for Logins table
INSERT INTO Logins (id, login_date) VALUES (7, '2020-05-30');
INSERT INTO Logins (id, login_date) VALUES (1, '2020-05-30');
INSERT INTO Logins (id, login_date) VALUES (7, '2020-05-31');
INSERT INTO Logins (id, login_date) VALUES (7, '2020-06-01');
INSERT INTO Logins (id, login_date) VALUES (7, '2020-06-02');
INSERT INTO Logins (id, login_date) VALUES (7, '2020-06-02');
INSERT INTO Logins (id, login_date) VALUES (7, '2020-06-03');
INSERT INTO Logins (id, login_date) VALUES (1, '2020-06-07');
INSERT INTO Logins (id, login_date) VALUES (7, '2020-06-10');
select * from Accounts;
select * from Logins;
/*
Problem:
Active users are those who logged in to their accounts for five or more consecutive days.
Write an SQL query to find the id and the name of active users.
Return the result table ordered by id.
*/
select login_date, rank() over (order by login_date) as rnk from Logins;
To embed this project on your website, copy the following code and paste it into your website's HTML: