统计函数
统计函数汇总。
返回在某一集合上对数值表达式求得的和。
名称 | 类型 | 描述 |
---|---|---|
语法 | SUM (expression [,partitionexp]) | |
参数 | expression | 数值表达式。 |
参数 | partitionexp | 以双引号包括,内容是partition by xx与order by xx可选参数,分组累计统计条件。 |
返回类型 | 同expression |
示例及效果:
SELECT SUM (money,"partition by id") FROM sample
上述对应到原生sql为:
SELECT SUM (money) over(partition by id),name FROM sample
指id相同money字段进行累加,注意和group by的区别是查询可以出现非统计字段如上面的name。
返回在某一集合上对数值表达式求得的平均值。
名称 | 类型 | 描述 |
---|---|---|
语法 | AVG (expression [,partitionexp]) | |
参数 | expression | 数值表达式。 |
参数 | partitionexp | 以双引号包括,内容是partition by xx与order by xx可选参数,分组累计统计条件。 |
返回类型 | DECIMAL |
示例及效果:
SELECT AVG (money,"partition by id") FROM sample
注:AVG除不尽的情况下在H2数据库情况下会返回整数,请使用sum(money)/count(money)。
返回在某一集合上对数值表达式求得的总记录数。
名称 | 类型 | 描述 |
---|---|---|
语法 | COUNT(expression [,partitionexp]) | |
参数 | expression | 有效表达式。 |
参数 | partitionexp | 以双引号包括,内容是partition by xx与order by xx可选参数,分组累计统计条件。 |
返回类型 | INT |
示例及效果:
#VSQL:
select count(id,"order by id") from example
#原生:
select COUNT( id) OVER(order by id) from example;
#VSQL:
select count(id," PARTITION by id") from example
#原生:
select COUNT( id) OVER(PARTITION by id) from example;
#VSQL:
select count(id,"PARTITION BY ID order by id") from example
#原生:
select COUNT( id) OVER(PARTITION BY ID order by id) from example;
#VSQL:
select count(distinct id) from example
#原生:
select COUNT(distinct id) from example;
#VSQL:
select count(distinct id,"order by id") from example
#原生:
select COUNT(distinct id) OVER(order by id) from example;
注:mssql只支持这种写法:
select COUNT(id,"PARTITION by id") from example;
返回在某一集合上对数值表达式求得的最小值。
名称 | 类型 | 描述 |
---|---|---|
语法 | MIN (expression [,partitionexp]) | |
参数 | expression | 有效表达式。 |
参数 | partitionexp | 以双引号包括,内容是partition by xx与order by xx可选参数,分组累计统计条件。 |
返回类型 | 同expression |
示例及效果:
SELECT MIN (money,"partition by id") FROM sample
返回在某一集合上对数值表达式求得的最大值。
名称 | 类型 | 描述 |
---|---|---|
语法 | MAX (expression [,partitionexp]) | |
参数 | expression | 有效表达式。 |
参数 | partitionexp | 以双引号包括,内容是partition by xx与order by xx可选参数,分组累计统计条件。 |
返回类型 | 同expression |
示例及效果:
SELECT MAX (money,"partition by id") FROM sample