У меня есть следующий запрос
SELECT Id, Request, BookingDate, BookingId FROM Table ORDER BY Request DESC, Date
Если в строке есть аналогичный ForeignKeyId, я бы хотел, чтобы он входил до следующей упорядоченной строки, например:
Request Date ForeignKeyId
Request3 01-Jun-11 56
Request2 03-Jun-11 89
NULL 03-Jun-11 89
Request1 05-Jun-11 11
NULL 20-Jul-11 57
У меня естьискал RANK и OVER, но не нашел простого исправления.
EDIT
Я редактировал выше, чтобы показать фактические поля и вставленные данные, используя следующиезапрос из ответа Андомара
select *
from (
select row_number() over (partition by BookingId order by Request DESC) rn
, Request, BookingDate, BookingID
from Table
WHERE Date = '28 aug 11'
) G
order by
rn
, Request DESC, BookingDate
1 ffffff 23/01/2011 15:57 350821
1 ddddddd 10/01/2011 16:28 348856
1 ccccccc 13/09/2010 14:44 338120
1 aaaaaaaaaa 21/05/2011 20:21 364422
1 123 17/09/2010 16:32 339202
1 NULL NULL
2 gggggg 08/12/2010 14:39 346634
2 NULL NULL
2 17/09/2010 16:32 339202
2 NULL 10/04/2011 15:08 361066
2 NULL 02/05/2011 14:12 362619
2 NULL 11/06/2011 13:55 366082
3 NULL NULL
3 16/10/2010 13:06 343023
3 22/10/2010 10:35 343479
3 30/04/2011 10:49 362435
Идентификатор бронирования 339202 должен отображаться рядом друг с другом, но не