COUNT_BIG (Transact-SQL)
Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure конечной точке аналитики платформы Аналитики Azure Synapse Analytics (PDW) в Microsoft Fabric Хранилище в Microsoft Fabric
Эта функция возвращает количество элементов, найденных в группе. Функция COUNT_BIG
работает подобно функции COUNT. Эти функции различаются только типами данных в возвращаемых значениях. Функция COUNT_BIG
всегда возвращает значение типа данных bigint. Функция COUNT
всегда возвращает значение типа данных int.
Соглашения о синтаксисе Transact-SQL
Синтаксис
-- Aggregation Function Syntax
COUNT_BIG ( { [ [ ALL | DISTINCT ] expression ] | * } )
-- Analytic Function Syntax
COUNT_BIG ( [ ALL ] { expression | * } ) OVER ( [ <partition_by_clause> ] )
Аргументы
ВСЕ
Применяет агрегатную функцию ко всем значениям. Аргумент ALL используется по умолчанию.
DISTINCT
Указывает, что функция COUNT_BIG
возвращает количество уникальных значений, не равных NULL.
выражение
Выражение любого типа данных. Функция COUNT_BIG
не поддерживает агрегатные функции и вложенные запросы в выражении.
*
Указывает, что функция COUNT_BIG
должна учитывать все строки, чтобы определить общее количество строк таблицы для возврата. Функция COUNT_BIG(*)
не принимает параметры и не поддерживает использование аргумента DISTINCT. Для функции COUNT_BIG(*)
не требуется параметр expression, так как по определению она не использует сведения о конкретном столбце. Функция COUNT_BIG(*)
возвращает количество строк в указанной таблице с учетом повторяющихся строк. Каждая строка учитывается отдельно, включая строки со значением NULL.
OVER ( [ partition_by_clause ] [ order_by_clause ] )
partition_by_clause делит результирующий набор, полученный с помощью предложения FROM
, на секции, к которым применяется функция COUNT_BIG
. Если этот параметр не указан, функция обрабатывает все строки результирующего набора запроса как отдельные группы. order_by_clause определяет логический порядок выполнения операции. Дополнительные сведения см. в статье Предложение OVER (Transact-SQL).
Типы возвращаемых данных
bigint
Замечания
COUNT_BIG(*) возвращает количество элементов в группе. Сюда входят значения NULL и повторяющиеся значения.
Функция COUNT_BIG (ALL expression) вычисляет expression для каждой строки в группе и возвращает количество значений, не равных NULL.
Функция COUNT_BIG (DISTINCT expression) вычисляет expression для каждой строки в группе и возвращает количество уникальных значений, не равных NULL.
COUNT_BIG — это детерминированная функция, если она используется без предложений OVER и ORDER BY. Она не является детерминированой при использовании с предложениями OVER и ORDER BY. Дополнительные сведения см. в статье Детерминированные и недетерминированные функции.
Примеры
Примеры см. в статье Функция COUNT (Transact-SQL).
См. также
Агрегатные функции (Transact-SQL)
COUNT (Transact-SQL)
int, bigint, smallint и tinyint (Transact-SQL)
Предложение OVER (Transact-SQL)