T-SQL Group пропустить и взять - PullRequest
2 голосов
/ 20 января 2012

Рассмотрим следующие таблицы:

tables

Как пропустить и взять группы из таблицы?Пробовал использовать Row_Number (), но это не помогает.Есть идеи?

Используется запрос

;WITH cte AS (SELECT  Room.Id,  Room.RoomName,
                 ROW_NUMBER() OVER 
                 (ORDER BY Room.Id) AS RN
         FROM    Room INNER JOIN
                 RoomDetails ON Room.Id = RoomDetails.RoomId)
SELECT  Id, RoomName
FROM    cte 
WHERE RN = 1

1 Ответ

4 голосов
/ 20 января 2012

Вам необходимо использовать разделение как часть функции dens_rank

dense_rank() over (partition by roomid) as row

см. Здесь еще несколько примеров Функции управления окнами

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...