Чтобы сделать GROUP BY и выбрать первую строку из каждой группы в SQL, можно использовать функцию ROW_NUMBER(). 12 Для этого нужно настроить её параметры группировки таким образом, чтобы она пронумеровывала строки внутри каждой группы и позволяла выполнять сортировку по указанному критерию. 2
Пример запроса: 2
WITH CTE AS ( SELECT *, ROW_NUMBER() OVER (PARTITION BY GroupColumn ORDER BY OrderCriteria) AS Rnk FROM YourTable)SELECT * FROM CTE WHERE Rnk = 1;
В данном запросе GroupColumn — это столбец, по которому производится группировка, OrderCriteria — критерий сортировки, а YourTable — название таблицы. 2 В итоге SELECT вернёт первую строку каждой группы. 2