语法
[GROUP BY <Expression[....,n]> [HAVING <Expression>]]
含义
GROUP BY 子句包含以下子句:
一个或多个自由聚合的表达式。通参见:TMemIniFile对象
1 常是对分组列的引用。
2 通常情况下,HAVING 子句与 GROUP BY 子句一起使用。
只要表达式中不包括聚合函数,就可通过该表达式分组。
范例
例如,对A股股价进行聚类,返回聚类中股票个数大于10的聚类,得到每个聚类的股票个数以及平均价格:
SELECT GetStockPriceType() AS "价格分类",AvgOf(["close"]) AS "平均价格",COUNTOF() AS "个数"
FROM MarketTable
eDateKey today() to today()
OF GetBK("深证A股;上证A股")
GROUP BY GetStockPriceType() Having COUNTOF()>10 END;
GetStockPriceType函数的定义如下:
function GetStockPriceType();
begin
return
ifthen(["close"]>15,"高价股",ifthen(["close"]>5,"中价股","低价股"));
end;