将列标题转换为postgresql中的行

前端之家收集整理的这篇文章主要介绍了将列标题转换为postgresql中的行前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个看起来像这样的观点
value1count     value2count value3count
          ----------------------------------------
             25              35          55

我需要将列标题转换为行,所以我需要它看起来像

Values              Count
         -----------------------------
           value1count         25
           value2count         35
           value3count         55

我可以通过选择单个列名称作为第一列,将数据作为第二列,然后为所有列执行相同的并集来完成此操作.

有一个更好的方法吗?
我正在使用Posgresql 8.1,所以没有使用枢轴运算符.

感谢您提前回复.

交叉表只会与您需要的相反,但这应该可以帮助您:

首先创建8.4中包含的unnest()函数,有关说明,请参阅here.

然后你可以这样做(基于this帖子):

SELECT
   unnest(array['value1Count','value2Count','value3Count']) AS "Values",unnest(array[value1Count,value2Count,value3Count]) AS "Count"
FROM view_name
ORDER BY "Values"

我可以验证这是否适用于8.4,但由于我没有8.1,我不能保证它会工作相同.

猜你在找的Postgre SQL相关文章