SQL - Когда был бы пустое ПО пункту использоваться?

Я анализирую некоторый код, который использует пустой ПО пунктам в конкурсе количества ().

Пример:

SELECT 
        ROW_NUMBER() OVER (ORDER BY Priority DESC) AS RowID,
        CAST((COUNT(*) OVER() / @pagesize) AS Int) AS TotalPages,

Я пытаюсь понять, почему пустое ПО пункту используется здесь.

Существуют другие стандартные избранные элементы ниже тех двух строк, которые я упомянул выше, и когда я удаляю пустое ПО пункту от второго строка TotalPages, я получаю ошибки как это:

Column 'TableA.Priority' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.

Как только я поместил ПО () назад, ошибки не стало.

Мое понимание ПО пункту очень ограничено... Я чувствую, что понимаю то, что продолжается в строке RowID..., но строка TotalPages просто экранирует меня.

6
задан Brian Webster 28 July 2010 в 16:41
поделиться