#sql
Есть SQL запрос: SELECT * FROM technologies WHERE technology_category_id IN (1,2,3) Можно ли одним запросом вывести по шесть строк для каждого id, которые внутри IN? LIMIT ограничивает общее количество результатов.
Ответы
Ответ 1
Можно использовать партиционирование: select * from ( select *, row_number() over (partition by technology_category_id order by technology_category_id) num from technologies where technology_category_id in (1,2,3) ) tech where num <= 6 В order by задайте нужный вам порядок сортировки, если хотите выводить определенные шесть записей.
Комментариев нет:
Отправить комментарий