指定要传输的摘要记录
在某些情况下,可能仅希望传输满足特定条件的摘要记录。通过使用 HAVING,可以选择要传输的摘要记录。WHERE 将应用于组中的某些记录,而 HAVING 将仅应用于摘要记录。
以下示例将传输每个零件的最高价格和最低价格。但是,要传输的摘要记录仅限于最高价格超过 10.00 的摘要记录。
| 库/文件(成员) | SUPPLIERS |
| GROUP BY | PARTNO |
| SELECT | PARTNO, MAX(PRICE), MIN(PRICE) |
| HAVING | MAX(PRICE) > 10.00 |
下表显示了使用 HAVING 删除不必要的摘要记录的结果
Field: PARTNO MAX(PRICE) MIN(PRICE)
------ ---------- ----------
Record 1: 209 19.50 18.00
2: 285 21.00 21.00
3: 207 29.00 29.00可以为整个文件传输一个摘要记录。为此,请仅在 SELECT 中指定摘要功能,而不在 GROUP BY 中指定任何内容。因此,可以将整个文件识别为一个组,同时可以为该组传输一个摘要记录。
可以同时使用汇总组的概念,以及连接来自多个文件的记录的概念。要获得所需的结果,请执行以下操作:
- 在 FROM 中指定文件,并在 JOIN BY 中指定连接条件以连接记录。
- 在 WHERE 中指定条件以删除不必要的记录。
- 在 GROUP BY 中指定用于对剩余记录进行分组的字段。
- 在 SELECT 中指定功能,然后创建摘要记录。
- 在 HAVING 中指定条件以删除不必要的记录。
- 在 ORDER BY 中指定用于对最终摘要记录进行分组的项。