Description
Calculates the total number of rows in the specified column.
Syntax
Count ( column { FOR range { DISTINCT { expres1 {, expres2 {, ... } } } } } )
Argument |
Description |
---|---|
column |
The column for which you want the number of rows. Column can be the column name or the column number preceded by a pound sign (#). Column can also be an expression that includes a reference to the column. |
FOR range (optional) |
The data that will be included in the count. For most presentation styles, values for range are:
For Crosstabs, specify CROSSTAB for range:
For Graph and OLE objects, specify one of the following:
|
DISTINCT (optional) |
Causes Count to consider only the distinct values in column when counting the rows. For a value of column, the first row found with the value is used and other rows that have the same value are ignored. |
expresn (optional) |
One or more expressions that you want to evaluate to determine distinct rows. Expresn can be the name of a column, a function, or an expression. |
Usage
If you specify range, Count determines the number of rows in column in range. If you specify DISTINCT, Count returns the number of the distinct rows displayed in column, or if you specify expresn, the number of rows displayed in column where the value of expresn is distinct.
For graphs and OLE objects, you do not select the range when you call the function. The range has already been determined by the Rows setting on the Data property page (the Range property), and the aggregation function uses that range.
Settings for Rows include the following:
-
For the Graph or OLE presentation style, Rows is always All.
-
For Graph controls, Rows can be All, Page, or Group.
-
For OLE controls, Rows can be All, Current Row, Page, or Group. The available choices depend on the layer the control occupies.
Null values in the column are ignored and are not included in the count.
Not in validation rules or filter expressions
You cannot use this or other aggregate functions in validation rules or filter expressions.
Using an aggregate function cancels the effect of setting Retrieve Rows As Needed in the painter. To do the aggregation, a DataWindow object always retrieves all rows.
Examples
This expression returns the number of rows in the column named emp_id that are not null:
Count(emp_id)
This expression returns the number of rows in the column named emp_id of group 1 that are not null:
Count(emp_id for group 1)
This expression returns the number of dept_ids that are distinct:
Count(dept_id for all DISTINCT)
This expression returns the number of regions with distinct products:
Count(region_id for all DISTINCT Lower(product_id))
This expression returns the number of rows in column 3 on the page that are not null:
Count(#3 for page)
See also