Есть 2 таблицы
create table users(
id serial,
name text,
organization_id integer,
activated boolean
);
insert into users(name, activated, organization_id) values('Вася', true, '1'),('Петя', false, '2');
create table bank_props(
id serial,
user_id int,
bik text,
inn text,
kpp text,
individual_guid text,
created_at timestamp,
active boolean
);
insert into bank_props(user_id, bik, inn, kpp, individual_guid, created_at, active)
values
(1, '123', '123', '123', '444', now() - interval '1 day', true),
(1, '123', '123', '123', '445', now() - interval '3 day', true),
(1, '123', '123', '123', '446', now() - interval '2 day', false),
(2, '124', '124', '124', '447', now() - interval '1 day', true),
(2, '124', '124', '124', '448', now() - interval '3 day', true),
(2, '124', '124', '124', '449', now() - interval '2 day', false);
Мне нужно получить ответ такого вида.
Отсортировать зависимую таблицу bank_props по created_at и взять первый вариант
[
{
user_id:1,
"bank_props": [
{
"bik": "string",
"inn": "string",
"kpp": "string",
"individual_guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}
],
},
{
user_id:2,
"bank_props": [
{
"bik": "string",
"inn": "string",
"kpp": "string",
"individual_guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}
],
}
]
я думал можно сделать через subquery как то, но не могу понять как