orders.month,
orders.year,
orders.model_name
FROM (
SELECT
orders."ServiceCenterId" AS service_center_id,
date_part('month', orders."Created") AS month,
date_part('year', orders."Created") AS year,
models."Name" as model_name
FROM "Orders" AS orders
JOIN "Models" AS models ON (orders."ModelId" = models."Id")
GROUP BY models."Id", orders."Id"
) AS orders
мне нужно его сгруппировать по service_center_id, month, year по получить топ 10 model_name в каждой группе
догадываюсь, что нужно воткнуть dense_rank с сортировкой по каунту моделей, а потом воспользоваться string_agg, но куда это засунуть?
в подзапрос добавить поле с ROW_NUMBER(....) as rn и в верхнем запросе сделать фильтр where rn<11 или использавать where lag(...,10) is null но это слишком уже.
Обсуждают сегодня