1

次のように並べ替えられたデータのテーブルがあります。

Item    |   Sample  |   Value   |
---------------------------------
Part A  |   Top     |   1.0     |
Part A  |   Bottom  |   4.0     |
Part A  |   Left    |   3.0     |
Part A  |   Right   |   2.0     |
Part A  |   Center  |   5.0     |
Part B  |   Top     |   6.0     |
Part B  |   Bottom  |   1.0     |
Part B  |   Left    |   1.0     |
Part B  |   Right   |   5.0     |
Part B  |   Center  |   9.0     |
Part C  |   Top     |   7.0     |
Part C  |   Bottom  |   5.0     |
Part C  |   Left    |   1.0     |
Part C  |   Right   |   2.0     |
Part C  |   Center  |   1.0     |

私はさらに統計分析を実行しようとしています。これらの計算では、データが次のように出力されることが理想的です。

Item    |   Top     |   Bottom  |   Left    |   Right   |   Center  |
---------------------------------------------------------------------
Part A  |   1.0     |   4.0     |   3.0     |   2.0     |   5.0     |
Part B  |   3.0     |   1.0     |   1.0     |   5.0     |   9.0     |
Part C  |   7.0     |   5.0     |   1.0     |   2.0     |   1.0     |

MSSQL では PIVOT または UNPIVOT 関数を使用してこれを達成できると信じていますが、Postgresql については確信が持てません。私が見つけた同様の解決策はすべてあいまいに思えました。ヘルプやガイダンスをいただければ幸いです。

4

1 に答える 1

0

そのためにtablefunc拡張crosstab()機能の機能を使用してください。

最近、SOに関するリンクと詳細な説明を含む複数の例を投稿しました。検索してみてください

于 2012-06-20T18:40:35.810 に答える