首页 > 解决方案 > 使用序号引用按大量列分组

问题描述

我在 postgres 中有一个冗长的查询,需要按查询中引用的 30 个不同的列进行分组

目前,我已经group by在查询中按它们的序数值手动列出了这些列

SELECT ...
GROUP BY 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30

是否存在更好的方法?我努力了

SELECT...
GROUP BY array(generate_series(1, 30))

但是这种方法失败了。在查询需要大量列的情况下,有没有办法generate_series在子句中引用查询中的列?GROUP BYgroup by

标签: sqlpostgresqlgroup-by

解决方案


推荐阅读