如何计算所有列的平均值?

时间:2010-12-21 20:56:58

标签: sql postgresql average

我正在处理一个包含超过100列的表,其中许多都是布尔值,如果这是相关的,因为我需要使用avg(variable_name :: int)来取每个布尔列的平均值。

现在,我想同时获取所有列的平均值。我该怎么做?

非常感谢。

我会试着更清楚: 我想要从A到ZZ的所有变量的所有平均值。其中一些是整数,一些是布尔值,这是我为布朗人所做的唯一理由。

PK     A  **** GZ ***   ZZ
--------------------------
1      T  ****  F ***    T
2      T  ****  F ***    T
3      F  ****  T ***    T
4      F  ****  F ***    F
5      T  ****  F ***    T

2 个答案:

答案 0 :(得分:2)

没有真正的偷偷摸摸或棘手的方法来做到这一点。您可以使用数据字典构建动态查询,但实际上并不推荐这样做。

如果你真的需要100个不同列的平均值,那么你必须输入avg() 100次。

我同意上述评论,但是,您可能会从某些规范化中获益。如果您有一堆名为'Something ##`的列,其中##是一系列数字,则尤其如此。

答案 1 :(得分:2)

也许我不明白你的问题。如果你从这样的表开始:

PK     A
--------
1      T
2      T
3      F
4      F
5      T

您希望得到什么答案:“A栏的平均值是多少?”