Sobes.tech
Junior — Senior

Obtaining the most recent contract for each client

livecode

Task condition

In the contract table, information about client contracts is stored. A single client may have multiple records with different signing dates. It is necessary to create an SQL query that, for each client (client field), selects the record with the latest date (date) – that is, the most recent contract.

CREATE TABLE contract (id integer, client varchar(100), date date)

INSERT INTO contract(id, client, date) VALUES (1, 'Jan', '2000-01-01');
INSERT INTO contract(id, client, date) VALUES (2, 'Jan', '2000-01-02');
INSERT INTO contract(id, client, date) VALUES (3, 'Jan', '2000-01-03');

INSERT INTO contract(id, client, date) VALUES (1, 'Alice', '2000-01-04');
INSERT INTO contract(id, client, date) VALUES (2, 'Alice', '2000-01-05');
INSERT INTO contract(id, client, date) VALUES (3, 'Alice', '2000-01-06');

INSERT INTO contract(id, client, date) VALUES (1, 'Bod', '2000-01-07');
INSERT INTO contract(id, client, date) VALUES (1, 'Bod', '2000-01-08');
INSERT INTO contract(id, client, date) VALUES (1, 'Bod', '2000-01-09');