小编use*_*558的帖子

PostgreSQL说"返回和sql元组描述不兼容"

我有以下数据:

ID  CLASS   VALUE
1   NHB    700905.7243
1   HBW    164216.1311
1   HBO    700905.7243
2   NHB    146023.3792
2   HBW    89543.2972
2   HBO    82152.072
3   NHB    1409818.328
3   HBW    220430.7922
3   HBO    323512.9391
4   NHB    48711.3814
4   HBW    163385.1575
4   HBO    363352.3441
Run Code Online (Sandbox Code Playgroud)

我想重组为:

ID     HBO             HBW              NHB
1   700905.7243    164216.1311      700905.7243
2   82152.072      89543.2972       146023.3792
3   323512.9391    220430.7922      1409818.328
4   363352.3441    163385.1575      48711.3814
Run Code Online (Sandbox Code Playgroud)

请注意,HBW,HBO和NHB列中的值是总计(总和).

这是我用来创建输出的脚本:

-- CREATE EXTENSION tablefunc;

SELECT *
FROM  CROSSTAB
(
    'SELECT _tlfd.id,   
    _tlfd."class",
    _tlfd."value"
    FROM public._tlfd
    WHERE _tlfd."class" …
Run Code Online (Sandbox Code Playgroud)

sql postgresql pivot crosstab

10
推荐指数
1
解决办法
1万
查看次数

标签 统计

crosstab ×1

pivot ×1

postgresql ×1

sql ×1