【发布时间】:2018-09-19 16:46:58
【问题描述】:
我在创建数据透视表方面需要帮助。我已经在这里尝试了许多提供的解决方案,但我被卡住了。希望有人可以提供帮助。这是我的场景:
Table1 示例
ID text 2712cb957
document_key text 201808
Table2 示例
ID text 2712cb957
amount_net int 56000
classid int 4021
Table3(来自 Table1 和 Table2,通过内部连接 ID)
document_key amount_net classid
201808 10 4021
201808 10 4021
201808 15 4023
201808 13 4023
201807 20 4021
201807 15 4021
… … …
预期的数据透视表
document_key 4021 4023
201807 35 0
201808 20 28
【问题讨论】:
-
sry,这是我在这里的第一篇文章。请点击图片链接了解详情。谢谢
-
你提前知道你只想要
4021和4023吗?或者这是否会基于您的表中存在的许多不同的classid是动态的? -
嗨,会有更多的类 id,所以是的,这应该是动态的
-
不用担心所有这些的格式。要保留您的空格和换行符,只需将表格/代码的每一行缩进 4 个空格。您还可以突出显示该块并点击编辑器顶部的
{}按钮。为了做到这一点,我已经对这个问题进行了编辑。 -
Postgres 中的动态枢轴一点也不简单。有一个很棒的write up at this question,尽管它会引导您了解
crosstab关键字、如何应用它以及制作动态内容所需的步骤。这是您要么深入研究函数,要么动态生成交叉表/数据透视查询然后执行动态生成的 sql 的事情之一。
标签: postgresql pivot