βΉοΈ Skipped - page is already crawled
| Filter | Status | Condition | Details |
|---|---|---|---|
| HTTP status | PASS | download_http_code = 200 | HTTP 200 |
| Age cutoff | PASS | download_stamp > now() - 6 MONTH | 0.3 months ago |
| History drop | PASS | isNull(history_drop_reason) | No drop reason |
| Spam/ban | PASS | fh_dont_index != 1 AND ml_spam_score = 0 | ml_spam_score=0 |
| Canonical | PASS | meta_canonical IS NULL OR = '' OR = src_unparsed | Not set |
| Property | Value |
|---|---|
| URL | https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count |
| Last Crawled | 2026-04-04 00:03:00 (7 days ago) |
| First Indexed | 2025-02-21 02:31:48 (1 year ago) |
| HTTP Status Code | 200 |
| Meta Title | count | ClickHouse Docs |
| Meta Description | Counts the number of rows or not-NULL values. |
| Meta Canonical | null |
| Boilerpipe Text | count
β
Introduced in: v1.1.0
Counts the number of rows or not-NULL values.
ClickHouse supports the following syntaxes for
count
:
count(expr)
or
COUNT(DISTINCT expr)
.
count()
or
COUNT(*)
. The
count()
syntax is ClickHouse-specific.
Details
ClickHouse supports the
COUNT(DISTINCT ...)
syntax.
The behavior of this construction depends on the
count_distinct_implementation
setting.
It defines which of the
uniq*
functions is used to perform the operation.
The default is the
uniqExact
function.
The
SELECT count() FROM table
query is optimized by default using metadata from MergeTree.
If you need to use row-level security, disable optimization using the
optimize_trivial_count_query
setting.
However
SELECT count(nullable_column) FROM table
query can be optimized by enabling the
optimize_functions_to_subcolumns
setting.
With
optimize_functions_to_subcolumns = 1
the function reads only
null
subcolumn instead of reading and processing the whole column data.
The query
SELECT count(n) FROM table
transforms to
SELECT sum(NOT n.null) FROM table
.
Improving COUNT(DISTINCT expr) performance
If your
COUNT(DISTINCT expr)
query is slow, consider adding a
GROUP BY
clause as this improves parallelization.
You can also use a
projection
to create an index on the target column used with
COUNT(DISTINCT target_col)
.
Syntax
count
(
[
expr
]
)
Arguments
expr
β Optional. An expression. The function counts how many times this expression returned not null.
Expression
Returned value
Returns the a row count if the function is called without parameters, otherwise returns a count of how many times the passed expression returned not null.
UInt64
Examples
Basic row count
Query
SELECT
count
(
)
FROM
t
Response
ββcount()ββ
β 5 β
βββββββββββ
COUNT(DISTINCT) example
Query
-- This example shows that `count(DISTINCT num)` is performed by the `uniqExact` function according to the `count_distinct_implementation` setting value.
SELECT
name
,
value
FROM
system
.
settings
WHERE
name
=
'count_distinct_implementation'
;
SELECT
count
(
DISTINCT
num
)
FROM
t
Response
ββnameβββββββββββββββββββββββββββ¬βvalueββββββ
β count_distinct_implementation β uniqExact β
βββββββββββββββββββββββββββββββββ΄ββββββββββββ
ββuniqExact(num)ββ
β 3 β
ββββββββββββββββββ |
| Markdown | [Skip to main content](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count#__docusaurus_skipToContent_fallback)
[](https://clickhouse.com/)
- [Products](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count)
- [ClickHouse Cloud Best way to use ClickHouse. Available on AWS, GCP, and Azure.](https://clickhouse.com/cloud)
- [BYOC (Bring Your Own Cloud) The fully managed ClickHouse Cloud service, Can be deployed in your AWS account.](https://clickhouse.com/cloud/bring-your-own-cloud)
- [ClickHouse Set up a database with open-source ClickHouse. ClickHouse](https://clickhouse.com/clickhouse)
- [Discover more than 100 integrations.](https://clickhouse.com/integrations)
[Discover more than 100 integrations.](https://clickhouse.com/integrations)
- [Use cases](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count)
- [Real-time analytics](https://clickhouse.com/use-cases/real-time-analytics)
- [Machine Learning & Generative AI](https://clickhouse.com/use-cases/machine-learning-and-data-science)
- [Business Intelligence](https://clickhouse.com/use-cases/data-warehousing)
- [Logs, Events, Traces](https://clickhouse.com/use-cases/observability)
- [All use cases](https://clickhouse.com/use-cases)
[All use cases](https://clickhouse.com/use-cases)
- [Documentation](https://clickhouse.com/docs)
- [Resources](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count)
- [User stories](https://clickhouse.com/user-stories)
- [Blog](https://clickhouse.com/blog)
- [Events](https://clickhouse.com/company/events)
- [Learning and certification](https://clickhouse.com/learn)
- [Comparison](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count)
- [BigQuery](https://clickhouse.com/comparison/bigquery)
- [PostgreSQL](https://clickhouse.com/comparison/postgresql)
- [Redshift](https://clickhouse.com/comparison/redshift)
- [Rockset](https://clickhouse.com/comparison/rockset)
- [Snowflake](https://clickhouse.com/comparison/snowflake)
- [Video](https://clickhouse.com/videos)
- [Demo](https://clickhouse.com/demos)
- [Pricing](https://clickhouse.com/pricing)
- [Contact](https://clickhouse.com/company/contact?loc=nav)
[46\.7k](https://github.com/ClickHouse/ClickHouse?utm_source=clickhouse&utm_medium=website&utm_campaign=website-nav)
[Search`Ctrl``K`](https://clickhouse.com/docs/search)
[Sign in](https://console.clickhouse.cloud/signIn?loc=docs-nav-signIn-cta&glxid=b63eb15c-3260-418b-80d4-ad2f5bacab2e&pagePath=%2Fdocs%2Fsql-reference%2Faggregate-functions%2Freference%2Fcount&origPath=%2Fdocs%2Fsql-reference%2Faggregate-functions%2Freference%2Fcount&utm_ga=GA1.1.1440556656.1775260982)
[Get started](https://console.clickhouse.cloud/signUp?loc=docs-nav-signUp-cta&glxid=b63eb15c-3260-418b-80d4-ad2f5bacab2e&pagePath=%2Fdocs%2Fsql-reference%2Faggregate-functions%2Freference%2Fcount&origPath=%2Fdocs%2Fsql-reference%2Faggregate-functions%2Freference%2Fcount&utm_ga=GA1.1.1440556656.1775260982)
[Get started](https://clickhouse.com/docs/introduction-clickhouse)
[Cloud](https://clickhouse.com/docs/cloud/overview)
[Manage data](https://clickhouse.com/docs/updating-data)
[Server admin](https://clickhouse.com/docs/guides/manage-and-deploy-index)
[Reference](https://clickhouse.com/docs/sql-reference)
[Integrations](https://clickhouse.com/docs/integrations)
[ClickStack](https://clickhouse.com/docs/use-cases/observability/clickstack/overview)
[chDB](https://clickhouse.com/docs/chdb)
[About](https://clickhouse.com/docs/about)
[Knowledge Base](https://clickhouse.com/docs/knowledgebase)
[English](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count)
- [English](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count)
- [ζ₯ζ¬θͺ](https://clickhouse.com/docs/jp/sql-reference/aggregate-functions/reference/count)
- [δΈζ](https://clickhouse.com/docs/zh/sql-reference/aggregate-functions/reference/count)
- [Π ΡΡΡΠΊΠΈΠΉ](https://clickhouse.com/docs/ru/sql-reference/aggregate-functions/reference/count)
- [νκ΅μ΄](https://clickhouse.com/docs/ko/sql-reference/aggregate-functions/reference/count)
[Skip to main content](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count#__docusaurus_skipToContent_fallback)
[](https://clickhouse.com/)
- [Products](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count)
- [ClickHouse Cloud Best way to use ClickHouse. Available on AWS, GCP, and Azure.](https://clickhouse.com/cloud)
- [BYOC (Bring Your Own Cloud) The fully managed ClickHouse Cloud service, Can be deployed in your AWS account.](https://clickhouse.com/cloud/bring-your-own-cloud)
- [ClickHouse Set up a database with open-source ClickHouse. ClickHouse](https://clickhouse.com/clickhouse)
- [Discover more than 100 integrations.](https://clickhouse.com/integrations)
[Discover more than 100 integrations.](https://clickhouse.com/integrations)
- [Use cases](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count)
- [Real-time analytics](https://clickhouse.com/use-cases/real-time-analytics)
- [Machine Learning & Generative AI](https://clickhouse.com/use-cases/machine-learning-and-data-science)
- [Business Intelligence](https://clickhouse.com/use-cases/data-warehousing)
- [Logs, Events, Traces](https://clickhouse.com/use-cases/observability)
- [All use cases](https://clickhouse.com/use-cases)
[All use cases](https://clickhouse.com/use-cases)
- [Documentation](https://clickhouse.com/docs)
- [Resources](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count)
- [User stories](https://clickhouse.com/user-stories)
- [Blog](https://clickhouse.com/blog)
- [Events](https://clickhouse.com/company/events)
- [Learning and certification](https://clickhouse.com/learn)
- [Comparison](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count)
- [BigQuery](https://clickhouse.com/comparison/bigquery)
- [PostgreSQL](https://clickhouse.com/comparison/postgresql)
- [Redshift](https://clickhouse.com/comparison/redshift)
- [Rockset](https://clickhouse.com/comparison/rockset)
- [Snowflake](https://clickhouse.com/comparison/snowflake)
- [Video](https://clickhouse.com/videos)
- [Demo](https://clickhouse.com/demos)
- [Pricing](https://clickhouse.com/pricing)
- [Contact](https://clickhouse.com/company/contact?loc=nav)
[46\.7k](https://github.com/ClickHouse/ClickHouse?utm_source=clickhouse&utm_medium=website&utm_campaign=website-nav)
[Search`Ctrl``K`](https://clickhouse.com/docs/search)
[Sign in](https://console.clickhouse.cloud/signIn?loc=docs-nav-signIn-cta&glxid=b63eb15c-3260-418b-80d4-ad2f5bacab2e&pagePath=%2Fdocs%2Fsql-reference%2Faggregate-functions%2Freference%2Fcount&origPath=%2Fdocs%2Fsql-reference%2Faggregate-functions%2Freference%2Fcount&utm_ga=GA1.1.1440556656.1775260982)
[Get started](https://console.clickhouse.cloud/signUp?loc=docs-nav-signUp-cta&glxid=b63eb15c-3260-418b-80d4-ad2f5bacab2e&pagePath=%2Fdocs%2Fsql-reference%2Faggregate-functions%2Freference%2Fcount&origPath=%2Fdocs%2Fsql-reference%2Faggregate-functions%2Freference%2Fcount&utm_ga=GA1.1.1440556656.1775260982)
[Get started](https://clickhouse.com/docs/introduction-clickhouse)
[Cloud](https://clickhouse.com/docs/cloud/overview)
[Manage data](https://clickhouse.com/docs/updating-data)
[Server admin](https://clickhouse.com/docs/guides/manage-and-deploy-index)
[Reference](https://clickhouse.com/docs/sql-reference)
[Integrations](https://clickhouse.com/docs/integrations)
[ClickStack](https://clickhouse.com/docs/use-cases/observability/clickstack/overview)
[chDB](https://clickhouse.com/docs/chdb)
[About](https://clickhouse.com/docs/about)
[Knowledge Base](https://clickhouse.com/docs/knowledgebase)
[English](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count)
- [English](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count)
- [ζ₯ζ¬θͺ](https://clickhouse.com/docs/jp/sql-reference/aggregate-functions/reference/count)
- [δΈζ](https://clickhouse.com/docs/zh/sql-reference/aggregate-functions/reference/count)
- [Π ΡΡΡΠΊΠΈΠΉ](https://clickhouse.com/docs/ru/sql-reference/aggregate-functions/reference/count)
- [νκ΅μ΄](https://clickhouse.com/docs/ko/sql-reference/aggregate-functions/reference/count)
[Search`Ctrl``K`](https://clickhouse.com/docs/search)
- [Introduction](https://clickhouse.com/docs/sql-reference)
- [Syntax](https://clickhouse.com/docs/sql-reference/syntax)
- [Input and Output Formats](https://clickhouse.com/docs/sql-reference/formats)
- [Data types](https://clickhouse.com/docs/sql-reference/data-types)
- [Statements](https://clickhouse.com/docs/sql-reference/statements)
- [Operators](https://clickhouse.com/docs/sql-reference/operators)
- [Engines](https://clickhouse.com/docs/engines)
- [Database Engines](https://clickhouse.com/docs/engines/database-engines)
- [Table Engines](https://clickhouse.com/docs/engines/table-engines)
- [Functions](https://clickhouse.com/docs/sql-reference/functions)
- [Regular functions](https://clickhouse.com/docs/sql-reference/functions/regular-functions)
- [Aggregate functions](https://clickhouse.com/docs/sql-reference/aggregate-functions)
- [Aggregate Functions](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference)
- [aggThrow](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/aggthrow)
- [analysisOfVariance](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/analysis_of_variance)
- [any](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/any)
- [anyHeavy](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/anyheavy)
- [anyLast](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/anylast)
- [approx\_top\_k](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/approxtopk)
- [approx\_top\_sum](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/approxtopsum)
- [argAndMax](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argandmax)
- [argAndMin](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argandmin)
- [argMax](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argmax)
- [argMin](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argmin)
- [avg](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/avg)
- [avgWeighted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/avgweighted)
- [boundingRatio](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/boundingRatio)
- [categoricalInformationValue](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/categoricalinformationvalue)
- [contingency](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/contingency)
- [corr](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/corr)
- [corrMatrix](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/corrmatrix)
- [corrStable](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/corrstable)
- [count](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count)
- [covarPop](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarpop)
- [covarPopMatrix](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarpopmatrix)
- [covarPopStable](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarpopstable)
- [covarSamp](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarsamp)
- [covarSampMatrix](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarsampmatrix)
- [covarSampStable](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarsampstable)
- [cramersV](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/cramersv)
- [cramersVBiasCorrected](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/cramersvbiascorrected)
- [deltaSum](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/deltasum)
- [deltaSumTimestamp](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/deltasumtimestamp)
- [distinctDynamicTypes](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/distinctdynamictypes)
- [distinctJSONPaths](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/distinctjsonpaths)
- [distinctJSONPathsAndTypes](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/distinctJSONPathsAndTypes)
- [entropy](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/entropy)
- [estimateCompressionRatio](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/estimateCompressionRatio)
- [exponentialMovingAverage](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialMovingAverage)
- [exponentialTimeDecayedAvg](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedAvg)
- [exponentialTimeDecayedCount](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedCount)
- [exponentialTimeDecayedMax](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedMax)
- [exponentialTimeDecayedSum](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedSum)
- [first\_value](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/first_value)
- [flameGraph](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/flame_graph)
- [groupArray](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparray)
- [groupArrayArray](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparrayarray)
- [groupArrayInsertAt](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparrayinsertat)
- [groupArrayIntersect](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparrayintersect)
- [groupArrayLast](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraylast)
- [groupArrayMovingAvg](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraymovingavg)
- [groupArrayMovingSum](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraymovingsum)
- [groupArraySample](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraysample)
- [groupArraySorted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraysorted)
- [groupBitAnd](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitand)
- [groupBitOr](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitor)
- [groupBitXor](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitxor)
- [groupBitmap](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmap)
- [groupBitmapAnd](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmapand)
- [groupBitmapOr](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmapor)
- [groupBitmapXor](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmapxor)
- [groupConcat](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupconcat)
- [groupUniqArray](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupuniqarray)
- [intervalLengthSum](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/intervalLengthSum)
- [kolmogorovSmirnovTest](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/kolmogorovsmirnovtest)
- [kurtPop](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/kurtpop)
- [kurtSamp](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/kurtsamp)
- [largestTriangleThreeBuckets](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/largestTriangleThreeBuckets)
- [last\_value](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/last_value)
- [mannWhitneyUTest](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/mannwhitneyutest)
- [max](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/max)
- [maxIntersections](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/maxintersections)
- [maxIntersectionsPosition](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/maxintersectionsposition)
- [maxMap](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/maxmap)
- [meanZTest](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/meanztest)
- [median](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/median)
- [min](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/min)
- [minMap](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/minmap)
- [quantile](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantile)
- [quantileBFloat16](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilebfloat16)
- [quantileDD](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileddsketch)
- [quantileDeterministic](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiledeterministic)
- [quantileExact Functions](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileexact)
- [quantileExactExclusive](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactExclusive)
- [quantileExactHigh](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactHigh)
- [quantileExactInclusive](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactInclusive)
- [quantileExactLow](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactLow)
- [quantileExactWeighted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileexactweighted)
- [quantileExactWeightedInterpolated](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactWeightedInterpolated)
- [quantileGK](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileGK)
- [quantileInterpolatedWeighted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileInterpolatedWeighted)
- [quantilePrometheusHistogram](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilePrometheusHistogram)
- [quantileTDigest](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletdigest)
- [quantileTDigestWeighted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletdigestweighted)
- [quantileTiming](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletiming)
- [quantileTimingWeighted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletimingweighted)
- [quantiles Functions](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiles)
- [quantilesExactExclusive](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilesExactExclusive)
- [quantilesExactInclusive](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilesExactInclusive)
- [quantilesGK](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilesGK)
- [quantilesTimingWeighted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilestimingweighted)
- [rankCorr](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/rankCorr)
- [simpleLinearRegression](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/simplelinearregression)
- [singleValueOrNull](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/singlevalueornull)
- [skewPop](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/skewpop)
- [skewSamp](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/skewsamp)
- [sparkbar](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sparkbar)
- [stddevPop](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevpop)
- [stddevPopStable](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevpopstable)
- [stddevSamp](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevsamp)
- [stddevSampStable](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevsampstable)
- [stochasticLinearRegression](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stochasticlinearregression)
- [stochasticLogisticRegression](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stochasticlogisticregression)
- [studentTTest](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/studentttest)
- [studentTTestOneSample](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/studentttestonesample)
- [sum](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sum)
- [sumCount](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sumcount)
- [sumKahan](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sumkahan)
- [sumMapWithOverflow](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/summapwithoverflow)
- [sumMap](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/summap)
- [sumWithOverflow](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sumwithoverflow)
- [theilsU](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/theilsu)
- [timeSeriesChangesToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesChangesToGrid)
- [timeSeriesDeltaToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesDeltaToGrid)
- [timeSeriesDerivToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesDerivToGrid)
- [timeSeriesGroupArray](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesGroupArray)
- [timeSeriesInstantDeltaToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesInstantDeltaToGrid)
- [timeSeriesInstantRateToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesInstantRateToGrid)
- [timeSeriesLastTwoSamples](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesLastTwoSamples)
- [timeSeriesPredictLinearToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesPredictLinearToGrid)
- [timeSeriesRateToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesRateToGrid)
- [timeSeriesResampleToGridWithStaleness](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness)
- [timeSeriesResetsToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesResetsToGrid)
- [topK](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/topk)
- [topKWeighted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/topkweighted)
- [uniq](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniq)
- [uniqCombined](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqcombined)
- [uniqCombined64](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqcombined64)
- [uniqExact](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqexact)
- [uniqHLL12](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqhll12)
- [uniqTheta](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqthetasketch)
- [varPop](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varPop)
- [varPopStable](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varpopstable)
- [varSamp](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varSamp)
- [varSampStable](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varsampstable)
- [welchTTest](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/welchttest)
- [Combinators](https://clickhouse.com/docs/sql-reference/aggregate-functions/combinators)
- [Parametric](https://clickhouse.com/docs/sql-reference/aggregate-functions/parametric-functions)
- [GROUPING](https://clickhouse.com/docs/sql-reference/aggregate-functions/grouping_function)
- [Combinator examples](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count)
- [Table functions](https://clickhouse.com/docs/sql-reference/table-functions)
- [Window functions](https://clickhouse.com/docs/sql-reference/window-functions)
- [Formats](https://clickhouse.com/docs/interfaces/formats)
- [Data Lakes](https://clickhouse.com/docs/sql-reference/datalakes)
- [Functions](https://clickhouse.com/docs/sql-reference/functions)
- [Aggregate functions](https://clickhouse.com/docs/sql-reference/aggregate-functions)
- [Aggregate Functions](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference)
- count
[Edit this page](https://github.com/ClickHouse/ClickHouse/tree/master/docs/en/sql-reference/aggregate-functions/reference/count.md)
# count
## count[β](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count#count "Direct link to count")
Introduced in: v1.1.0
Counts the number of rows or not-NULL values.
ClickHouse supports the following syntaxes for `count`:
- `count(expr)` or `COUNT(DISTINCT expr)`.
- `count()` or `COUNT(*)`. The `count()` syntax is ClickHouse-specific.
**Details**
ClickHouse supports the `COUNT(DISTINCT ...)` syntax. The behavior of this construction depends on the [`count_distinct_implementation`](https://clickhouse.com/docs/operations/settings/settings#count_distinct_implementation) setting. It defines which of the [uniq\*](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniq) functions is used to perform the operation. The default is the [uniqExact](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqexact) function.
The `SELECT count() FROM table` query is optimized by default using metadata from MergeTree. If you need to use row-level security, disable optimization using the [`optimize_trivial_count_query`](https://clickhouse.com/docs/operations/settings/settings#optimize_trivial_count_query) setting.
However `SELECT count(nullable_column) FROM table` query can be optimized by enabling the [`optimize_functions_to_subcolumns`](https://clickhouse.com/docs/operations/settings/settings#optimize_functions_to_subcolumns) setting. With `optimize_functions_to_subcolumns = 1` the function reads only [`null`](https://clickhouse.com/docs/sql-reference/data-types/nullable#finding-null) subcolumn instead of reading and processing the whole column data. The query `SELECT count(n) FROM table` transforms to `SELECT sum(NOT n.null) FROM table`.
Improving COUNT(DISTINCT expr) performance
If your `COUNT(DISTINCT expr)` query is slow, consider adding a [`GROUP BY`](https://clickhouse.com/docs/sql-reference/statements/select/group-by) clause as this improves parallelization. You can also use a [projection](https://clickhouse.com/docs/sql-reference/statements/alter/projection) to create an index on the target column used with `COUNT(DISTINCT target_col)`.
**Syntax**
```
count([expr])
```
**Arguments**
- `expr` β Optional. An expression. The function counts how many times this expression returned not null. [`Expression`](https://clickhouse.com/docs/sql-reference/data-types/special-data-types/expression)
**Returned value**
Returns the a row count if the function is called without parameters, otherwise returns a count of how many times the passed expression returned not null. [`UInt64`](https://clickhouse.com/docs/sql-reference/data-types/int-uint)
**Examples**
**Basic row count**
Query
```
SELECT count() FROM t
```
Response
```
ββcount()ββ
β 5 β
βββββββββββ
```
**COUNT(DISTINCT) example**
Query
```
-- This example shows that `count(DISTINCT num)` is performed by the `uniqExact` function according to the `count_distinct_implementation` setting value.
SELECT name, value FROM system.settings WHERE name = 'count_distinct_implementation';
SELECT count(DISTINCT num) FROM t
```
Response
```
ββnameβββββββββββββββββββββββββββ¬βvalueββββββ
β count_distinct_implementation β uniqExact β
βββββββββββββββββββββββββββββββββ΄ββββββββββββ
ββuniqExact(num)ββ
β 3 β
ββββββββββββββββββ
```
[Previous corrStable](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/corrstable)
[Next covarPop](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarpop)
- [count](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count#count)
Was this page helpful?
###### Try ClickHouse Cloud for FREE
Separation of storage and compute, automatic scaling, built-in SQL console, and lots more. \$300 in free credits when signing up.
[Try it for Free](https://console.clickhouse.cloud/signUp?loc=doc-card-banner&glxid=b63eb15c-3260-418b-80d4-ad2f5bacab2e&pagePath=%2Fdocs%2Fsql-reference%2Faggregate-functions%2Freference%2Fcount&origPath=%2Fdocs%2Fsql-reference%2Faggregate-functions%2Freference%2Fcount&utm_ga=GA1.1.1440556656.1775260982)
Β© 2016β2026 ClickHouse, Inc.
[Trademark](https://clickhouse.com/legal/trademark-policy)Β·[Privacy](https://clickhouse.com/legal/privacy-policy)Β·[Security](https://trust.clickhouse.com/)Β·[Terms of Service](https://clickhouse.com/legal/agreements/terms-of-service)

Β© 2016β2026 ClickHouse, Inc.
[Trademark](https://clickhouse.com/legal/trademark-policy)Β·[Privacy](https://clickhouse.com/legal/privacy-policy)Β·[Security](https://trust.clickhouse.com/)Β·[Terms of Service](https://clickhouse.com/legal/agreements/terms-of-service)

[](https://clickhouse.com/)
EN
- Get startedβΌ
- CloudβΌ
- Manage dataβΌ
- Server adminβΌ
- ReferenceβΌ
- IntegrationsβΌ
- ClickStackβΌ
- chDBβΌ
- AboutβΌ
[](https://clickhouse.com/)
EN
main-menu
- IntroductionβΌ
- [Syntax](https://clickhouse.com/docs/sql-reference/syntax)
- [Input and Output Formats](https://clickhouse.com/docs/sql-reference/formats)
- Data typesβΌ
- StatementsβΌ
- OperatorsβΌ
- EnginesβΌ
- FunctionsβΌ
- Regular functionsβΌ
- Aggregate functionsβΌ
- Aggregate FunctionsβΌ
- [aggThrow](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/aggthrow)
- [analysisOfVariance](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/analysis_of_variance)
- [any](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/any)
- [anyHeavy](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/anyheavy)
- [anyLast](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/anylast)
- [approx\_top\_k](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/approxtopk)
- [approx\_top\_sum](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/approxtopsum)
- [argAndMax](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argandmax)
- [argAndMin](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argandmin)
- [argMax](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argmax)
- [argMin](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argmin)
- [avg](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/avg)
- [avgWeighted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/avgweighted)
- [boundingRatio](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/boundingRatio)
- [categoricalInformationValue](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/categoricalinformationvalue)
- [contingency](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/contingency)
- [corr](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/corr)
- [corrMatrix](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/corrmatrix)
- [corrStable](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/corrstable)
- [count](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count)
- [covarPop](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarpop)
- [covarPopMatrix](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarpopmatrix)
- [covarPopStable](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarpopstable)
- [covarSamp](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarsamp)
- [covarSampMatrix](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarsampmatrix)
- [covarSampStable](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarsampstable)
- [cramersV](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/cramersv)
- [cramersVBiasCorrected](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/cramersvbiascorrected)
- [deltaSum](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/deltasum)
- [deltaSumTimestamp](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/deltasumtimestamp)
- [distinctDynamicTypes](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/distinctdynamictypes)
- [distinctJSONPaths](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/distinctjsonpaths)
- [distinctJSONPathsAndTypes](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/distinctJSONPathsAndTypes)
- [entropy](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/entropy)
- [estimateCompressionRatio](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/estimateCompressionRatio)
- [exponentialMovingAverage](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialMovingAverage)
- [exponentialTimeDecayedAvg](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedAvg)
- [exponentialTimeDecayedCount](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedCount)
- [exponentialTimeDecayedMax](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedMax)
- [exponentialTimeDecayedSum](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedSum)
- [first\_value](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/first_value)
- [flameGraph](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/flame_graph)
- [groupArray](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparray)
- [groupArrayArray](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparrayarray)
- [groupArrayInsertAt](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparrayinsertat)
- [groupArrayIntersect](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparrayintersect)
- [groupArrayLast](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraylast)
- [groupArrayMovingAvg](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraymovingavg)
- [groupArrayMovingSum](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraymovingsum)
- [groupArraySample](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraysample)
- [groupArraySorted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraysorted)
- [groupBitAnd](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitand)
- [groupBitOr](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitor)
- [groupBitXor](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitxor)
- [groupBitmap](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmap)
- [groupBitmapAnd](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmapand)
- [groupBitmapOr](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmapor)
- [groupBitmapXor](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmapxor)
- [groupConcat](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupconcat)
- [groupUniqArray](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupuniqarray)
- [intervalLengthSum](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/intervalLengthSum)
- [kolmogorovSmirnovTest](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/kolmogorovsmirnovtest)
- [kurtPop](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/kurtpop)
- [kurtSamp](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/kurtsamp)
- [largestTriangleThreeBuckets](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/largestTriangleThreeBuckets)
- [last\_value](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/last_value)
- [mannWhitneyUTest](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/mannwhitneyutest)
- [max](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/max)
- [maxIntersections](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/maxintersections)
- [maxIntersectionsPosition](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/maxintersectionsposition)
- [maxMap](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/maxmap)
- [meanZTest](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/meanztest)
- [median](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/median)
- [min](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/min)
- [minMap](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/minmap)
- [quantile](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantile)
- [quantileBFloat16](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilebfloat16)
- [quantileDD](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileddsketch)
- [quantileDeterministic](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiledeterministic)
- [quantileExact Functions](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileexact)
- [quantileExactExclusive](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactExclusive)
- [quantileExactHigh](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactHigh)
- [quantileExactInclusive](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactInclusive)
- [quantileExactLow](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactLow)
- [quantileExactWeighted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileexactweighted)
- [quantileExactWeightedInterpolated](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactWeightedInterpolated)
- [quantileGK](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileGK)
- [quantileInterpolatedWeighted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileInterpolatedWeighted)
- [quantilePrometheusHistogram](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilePrometheusHistogram)
- [quantileTDigest](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletdigest)
- [quantileTDigestWeighted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletdigestweighted)
- [quantileTiming](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletiming)
- [quantileTimingWeighted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletimingweighted)
- [quantiles Functions](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiles)
- [quantilesExactExclusive](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilesExactExclusive)
- [quantilesExactInclusive](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilesExactInclusive)
- [quantilesGK](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilesGK)
- [quantilesTimingWeighted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilestimingweighted)
- [rankCorr](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/rankCorr)
- [simpleLinearRegression](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/simplelinearregression)
- [singleValueOrNull](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/singlevalueornull)
- [skewPop](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/skewpop)
- [skewSamp](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/skewsamp)
- [sparkbar](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sparkbar)
- [stddevPop](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevpop)
- [stddevPopStable](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevpopstable)
- [stddevSamp](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevsamp)
- [stddevSampStable](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevsampstable)
- [stochasticLinearRegression](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stochasticlinearregression)
- [stochasticLogisticRegression](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stochasticlogisticregression)
- [studentTTest](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/studentttest)
- [studentTTestOneSample](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/studentttestonesample)
- [sum](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sum)
- [sumCount](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sumcount)
- [sumKahan](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sumkahan)
- [sumMapWithOverflow](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/summapwithoverflow)
- [sumMap](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/summap)
- [sumWithOverflow](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sumwithoverflow)
- [theilsU](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/theilsu)
- [timeSeriesChangesToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesChangesToGrid)
- [timeSeriesDeltaToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesDeltaToGrid)
- [timeSeriesDerivToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesDerivToGrid)
- [timeSeriesGroupArray](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesGroupArray)
- [timeSeriesInstantDeltaToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesInstantDeltaToGrid)
- [timeSeriesInstantRateToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesInstantRateToGrid)
- [timeSeriesLastTwoSamples](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesLastTwoSamples)
- [timeSeriesPredictLinearToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesPredictLinearToGrid)
- [timeSeriesRateToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesRateToGrid)
- [timeSeriesResampleToGridWithStaleness](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness)
- [timeSeriesResetsToGrid](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesResetsToGrid)
- [topK](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/topk)
- [topKWeighted](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/topkweighted)
- [uniq](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniq)
- [uniqCombined](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqcombined)
- [uniqCombined64](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqcombined64)
- [uniqExact](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqexact)
- [uniqHLL12](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqhll12)
- [uniqTheta](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqthetasketch)
- [varPop](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varPop)
- [varPopStable](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varpopstable)
- [varSamp](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varSamp)
- [varSampStable](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varsampstable)
- [welchTTest](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/welchttest)
- [Combinators](https://clickhouse.com/docs/sql-reference/aggregate-functions/combinators)
- [Parametric](https://clickhouse.com/docs/sql-reference/aggregate-functions/parametric-functions)
- [GROUPING](https://clickhouse.com/docs/sql-reference/aggregate-functions/grouping_function)
- Combinator examplesβΌ
- Table functionsβΌ
- Window functionsβΌ
- FormatsβΌ
- [Data Lakes](https://clickhouse.com/docs/sql-reference/datalakes) |
| Readable Markdown | ## count[β](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count#count "Direct link to count")
Introduced in: v1.1.0
Counts the number of rows or not-NULL values.
ClickHouse supports the following syntaxes for `count`:
- `count(expr)` or `COUNT(DISTINCT expr)`.
- `count()` or `COUNT(*)`. The `count()` syntax is ClickHouse-specific.
**Details**
ClickHouse supports the `COUNT(DISTINCT ...)` syntax. The behavior of this construction depends on the [`count_distinct_implementation`](https://clickhouse.com/docs/operations/settings/settings#count_distinct_implementation) setting. It defines which of the [uniq\*](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniq) functions is used to perform the operation. The default is the [uniqExact](https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqexact) function.
The `SELECT count() FROM table` query is optimized by default using metadata from MergeTree. If you need to use row-level security, disable optimization using the [`optimize_trivial_count_query`](https://clickhouse.com/docs/operations/settings/settings#optimize_trivial_count_query) setting.
However `SELECT count(nullable_column) FROM table` query can be optimized by enabling the [`optimize_functions_to_subcolumns`](https://clickhouse.com/docs/operations/settings/settings#optimize_functions_to_subcolumns) setting. With `optimize_functions_to_subcolumns = 1` the function reads only [`null`](https://clickhouse.com/docs/sql-reference/data-types/nullable#finding-null) subcolumn instead of reading and processing the whole column data. The query `SELECT count(n) FROM table` transforms to `SELECT sum(NOT n.null) FROM table`.
Improving COUNT(DISTINCT expr) performance
If your `COUNT(DISTINCT expr)` query is slow, consider adding a [`GROUP BY`](https://clickhouse.com/docs/sql-reference/statements/select/group-by) clause as this improves parallelization. You can also use a [projection](https://clickhouse.com/docs/sql-reference/statements/alter/projection) to create an index on the target column used with `COUNT(DISTINCT target_col)`.
**Syntax**
```
count([expr])
```
**Arguments**
- `expr` β Optional. An expression. The function counts how many times this expression returned not null. [`Expression`](https://clickhouse.com/docs/sql-reference/data-types/special-data-types/expression)
**Returned value**
Returns the a row count if the function is called without parameters, otherwise returns a count of how many times the passed expression returned not null. [`UInt64`](https://clickhouse.com/docs/sql-reference/data-types/int-uint)
**Examples**
**Basic row count**
Query
```
SELECT count() FROM t
```
Response
```
ββcount()ββ
β 5 β
βββββββββββ
```
**COUNT(DISTINCT) example**
Query
```
-- This example shows that `count(DISTINCT num)` is performed by the `uniqExact` function according to the `count_distinct_implementation` setting value.
SELECT name, value FROM system.settings WHERE name = 'count_distinct_implementation';
SELECT count(DISTINCT num) FROM t
```
Response
```
ββnameβββββββββββββββββββββββββββ¬βvalueββββββ
β count_distinct_implementation β uniqExact β
βββββββββββββββββββββββββββββββββ΄ββββββββββββ
ββuniqExact(num)ββ
β 3 β
ββββββββββββββββββ
``` |
| Shard | 89 (laksa) |
| Root Hash | 12633450985039531489 |
| Unparsed URL | com,clickhouse!/docs/sql-reference/aggregate-functions/reference/count s443 |