You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle SQL双透视(Double Pivot)实现问题求助

双透视(Double Pivot)实现方案

Excel操作步骤

  • 选中全部原始数据,点击「插入」→「数据透视表」,按提示确认透视表放置位置
  • 在透视表字段面板中:
    • 把**产品(A列)**拖到「行」区域
    • 把B列拖到「列」区域,接着把C列也拖到「列」区域,放在B列字段的下方,形成二级列标题层级
    • 把D列拖到「值」区域,默认是求和汇总,若需要其他汇总方式,右键值区域字段→「值字段设置」调整
  • 若列标题布局不符合预期,右键列标题→「字段设置」,调整显示格式即可匹配目标效果

Python pandas实现代码

如果用代码处理,用pivot_table直接实现双维度列透视:

import pandas as pd

# 假设你的数据存储在DataFrame df中,列名对应为'产品', 'B', 'C', 'D'
pivot_result = df.pivot_table(
    index='产品',
    columns=['B', 'C'],  # 双列维度,按B、C层级排列
    values='D',
    aggfunc='sum',  # 汇总方式,按需换成mean、count等
    fill_value=0  # 空值填充为0,可根据需求修改
)

# 查看结果
print(pivot_result)

之前没得到预期结果,大概率是没把B、C列设置成层级列维度(Excel里没放对列区域的层级,代码里没把columns设为包含B、C的列表),调整后就能得到目标样式。

内容的提问来源于stack exchange,提问作者Greg Gibble

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 09:59:56