我在postgres中有一个表(这是查询的结果),它有一组行(复杂的数据总和的结果),如下所示:(列名是每天的名称,以及每列的值是双精度.)
星期一星期二星期四星期四星期四星期五
1.24 1.11 4.51 3.21 2.21 1.01
我需要从一行中选择数据,因此结果如下所示:
日数
太阳1.24
周一1.11
周二4.51
周三3.21
周四2.21
周五1.01
我刚开始时遇到困难,因为我真的需要将列名更改为值并转动结果.我尝试过使用交叉表,但我并不完全确定这是我需要的.任何可以让我朝着正确的方向前进的建议或建议都将非常感激.
我不知道直接实现,但也许像http://www.mail-archive.com/dhis2-users@lists.launchpad.net/msg00109.html这样的东西可以让你开始
当然,如果您不需要灵活的解决方案,您也可以这样做
SELECT 'Sun' AS Day, Sun AS Value FROM TABLE WHERE ...
UNION ALL
SELECT 'Mon' AS Day, Mon AS Value FROM TABLE WHERE ...
UNION ALL
SELECT 'Tue' AS Day, Tue AS Value FROM TABLE WHERE ...
UNION ALL
SELECT 'Wed' AS Day, Wed AS Value FROM TABLE WHERE ...
UNION ALL
SELECT 'Thu' AS Day, Thu AS Value FROM TABLE WHERE ...
UNION ALL
SELECT 'Fri' AS Day, Fri AS Value FROM TABLE WHERE ...
Run Code Online (Sandbox Code Playgroud)
(周六?)
| 归档时间: |
|
| 查看次数: |
4869 次 |
| 最近记录: |