Глава 6. Запросы
Понятие оконного кадра (window frame) является важным, поскольку многие окон-
ные функции работают не со всеми строками раздела, а только с теми, которые обра-
зуют оконный кадр текущей строки. Если строки в разделе не упорядочены, то окон-
ным кадром текущей строки по умолчанию считается множество всех строк раздела.
Однако в том случае, когда строки в разделе упорядочены по какому-то критерию,
тогда в состав оконного кадра по умолчанию включаются строки, начиная с первой
строки раздела и заканчивая текущей строкой. Если же существуют строки, имеющие
такое же значение критерия сортировки, что и текущая строка, и расположенные
по-
сле
нее, то они также включаются в состав оконного кадра текущей строки.
Обратите внимание на первые строки в представленной выборке. В строках с третьей
по пятую значения в столбце count одинаковые и равны 5. Равенство значений име-
ет следующее объяснение. В рамках одного бронирования с номером 854C4C были
проданы сразу три билета на этот рейс, поэтому в этих трех строках значения в столб-
це book_date одинаковые. Строки в выборке упорядочены по значениям столбца
book_date. Таким образом, для каждой из этих трех строк, т. е. для третьей, четвер-
той и пятой, значения критерия сортировки одинаковые, поэтому оконным кадром
для каждой из них будут являться первые пять строк первого раздела выборки. Под-
счет числа проданных билетов выполняется в пределах оконного кадра. В результате
и появляется значение 5 в каждой из этих трех строк, а значений 3 и 4 нет вообще.
В приведенной выборке отражены также и случаи одновременного бронирования
двух билетов на данный рейс. Вы можете найти соответствующие строки самосто-
ятельно.
Теперь посмотрим, с помощью какого запроса был получен этот результат, и на его
примере объясним синтаксические конструкции, используемые для работы с окон-
ными функциями.
Достарыңызбен бөлісу: