HAVING

此项为可选项。它指定要传输的摘要记录。

特别注意 HAVINGWHERE 之间的区别。WHERE 对特定组中的每个记录进行运算。另一方面,HAVING 只对摘要记录(包含每个组的摘要信息的记录)进行运算。

使用此项,可以指定一个或多个条件,在传输前摘要记录必须满足这些条件。

作为条件,指定应应用于摘要记录的测试。指定的测试条件将应用于所有摘要记录,仅传输通过测试的摘要记录。要传输所有摘要记录,请将 HAVING 项留空。

条件格式如下所示:
function (field-name)  test  value
这表示:
功能
这是 SELECT 支持的功能。有关这些函数的详细信息,请参阅本节中的 SELECT 描述。
字段名
这是在 FROM 中指定的记录格式定义的字段。即使未在 SELECT 中指定字段名,也可以接受字段名。
测试
这是函数的比较类型。以下列出了类型。
=
等于
<> 或 ><
不等于
>
对于
>=
大于或等于
<
小于
<=
小于或等于
这是在某些字段或常量上进行运算的函数。有关常量、表达式和测试的详细信息,请参阅 WHERE
注: 逗号被当作小数点处理。因此,不要用逗号分隔数字。
可以使用逻辑 AND 或逻辑 OR 组合测试条件。同时指定 AND 和 OR 时,将首先执行 AND 比较。最多可指定 50 个测试。通过使用括号,可以修改运算顺序,或将描述添加到运算中。例如,可以指定:
COUNT(*) >=2 AND MAX(PRICE) > 100

在这种情况下,同时应用以下条件:要传输的组必须包含多条记录,并且仅当最大价格大于 100 时才会传输此类组中的摘要记录。

如果找不到所需的字段,选择“浏览”将显示记录中所有字段的名称列表。

为每个函数返回的值的类型、长度、数字和小数位数包括:
            Type     Length    Digit       Decimal Places
SUM         Packed     16       31    (Same as tested field)
AVG         Packed     16       31     31 (Total of the digit
                                           and decimal places
                                           of the field)
COUNT       Binary      4       10         0
MAX              (Same as tested field)
MIN              (Same as tested field)