use*_*255 2 sql postgresql stored-procedures plpgsql greenplum
我在表中有 30 个数字数字列。我想为表中的所有列找到平均值、标准和百分位数。我不想像下面那样手动编写所有列名
select date,
avg(col1), stddev(col1),
avg(col2), stddev(col2),
from table name group by date;
Run Code Online (Sandbox Code Playgroud)
有什么方法可以一次找到所有列的均值、标准差和百分位数。
您可以使用横向连接简化逻辑:
select which, min(val), max(val), stddev(val), avg(val)
from t, lateral
(values ('col1', col1), ('col2', col2), . . .
) v(which, val)
group by which;
Run Code Online (Sandbox Code Playgroud)
您仍然需要列出列,但您只需要在values子句中这样做一次。
| 归档时间: |
|
| 查看次数: |
9177 次 |
| 最近记录: |