首页 > 数据库 > mysql教程 > 如何在 PostgreSQL 中转置表:将列转换为行?

如何在 PostgreSQL 中转置表:将列转换为行?

Barbara Streisand
发布: 2025-01-03 20:26:41
原创
946 人浏览过

How to Transpose a Table in PostgreSQL: Converting Columns to Rows?

转置表格:将列转换为行

使用表格数据时,转置表格(将其列转换为行)非常有用。这可以促进数据可视化、分析以及与其他数据集的集成。

考虑以下 PostgreSQL 表,其中包含员工信息:

Sl.no    username    Designation    salary
1        A           XYZ            10000
2        B           RTS            50000
3        C           QWE            20000
4        D           HGD            34343
登录后复制

要转置此表,我们可以使用以下内容步骤:

  1. 取消嵌套列名称:
    使用 unnest() 函数,我们可以将列名称提取到单独的行中:

    unnest(array['Sl.no', 'username', 'Designation','salary']) AS "Columns"
    登录后复制
  2. 取消数据值的嵌套:
    类似地,我们可以将每一行的数据值提取到单独的rows:

    unnest(array[Sl.no, username, value3Count,salary]) AS "Values"
    登录后复制
  3. 加入提取的列表:
    最后,我们可以加入提取的列名和数据值来重新创建转置表:

    SELECT
       "Columns",
       "Values"
    FROM transposed_table
    ORDER BY "Columns"
    登录后复制

此查询的结果将be:

Sl.no            1       2        3       4
 Username        A       B        C       D
 Designation     XYZ     RTS      QWE     HGD
 Salary          10000   50000    20000   34343
登录后复制

此转置表现在将员工信息按行排列,原始列名称作为第一列。这种格式可以更方便地进行某些操作,例如数据可视化或比较不同类别的员工属性。

以上是如何在 PostgreSQL 中转置表:将列转换为行?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板