Min

Description

Gets the minimum value in the specified column.

Syntax

Min ( column { FOR range { DISTINCT { expres1 {, expres2 {, ... } } } } } )

Argument

Description

column

The column for which you want the minimum value. 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. The datatype of column must be numeric.

FOR range (optional)

The data that will be included in the minimum. For most presentation styles, values for range are:

  • ALL -- (Default) The minimum of all values in column.

  • GROUP n -- The minimum of values in column in the specified group. Specify the keyword GROUP followed by the group number: for example, GROUP 1.

  • PAGE -- The minimum of the values in column on a page.

For Crosstabs, specify CROSSTAB for range:

  • CROSSTAB -- (Crosstabs only) The minimum of all values in column in the crosstab.

For Graph and OLE objects, specify one of the following:

  • GRAPH -- (Graphs only) The minimum of values in column in the range specified for the Rows option.

  • OBJECT -- (OLE objects only) The minimum of values in column in the range specified for the Rows option.

DISTINCT (optional)

Causes Min to consider only the distinct values in column when determining the minimum value. 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.


Return value

The datatype of the column. Returns the minimum value in the rows of column. If you specify range, Min returns the minimum value in the rows of column in range.

Usage

If you specify range, Min determines the minimum value in column in range. If you specify DISTINCT, Min returns the minimum distinct value in column, or if you specify expresn, the minimum distinct value 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:

  • 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 are ignored and are not considered in determining the minimum.

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 minimum value in the column named age in group 2:

Min(age for group 2)

This expression returns the minimum of the values in column 3 on the page:

Min(#3 for page)

Assuming a DataWindow object displays the order number, amount, and line items for each order, this computed field returns the minimum of the order amount for the distinct order numbers:

Min(order_amt for all DISTINCT order_nbr)

See also

Max

Min in the section called “Min” in PowerScript Reference