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

Power BI:如何按行索引将JSON记录列的数值转换为独立新列

Power BI 提取JSON固定位置值的操作步骤
  • 第一步:进入Power Query编辑器,选中存储JSON的目标列,依次点击顶部「转换」选项卡→「解析」→「JSON」,完成JSON结构转换。
  • 第二步:添加原行号标识列,依次点击「添加列」→「索引列」→「从1开始」,命名为原表行号,用于后续区分不同行的JSON数据。
  • 第三步:添加自定义列提取每个JSON行的第一列值,自定义列公式填写:
    = List.Transform(Table.ToRows(Table.FromRecords([替换为你解析后的JSON列名])), each _{0})
    
    如果你解析后的JSON直接是嵌套数组结构,公式可简化为:
    = List.Transform([替换为你解析后的JSON列名], each _{0})
    
    公式运行后,每一行的自定义列都会生成一个包含3个元素的列表,对应你需要的3个第一列数值。
  • 第四步:选中自定义列,点击列标题右侧的扩展按钮,选择「扩展到新行」,即可把每个列表的3个值拆分为独立行。
  • 第五步:给每组同原行号的数值添加位置索引,依次点击「添加列」→「索引列」→「高级」,设置「按列分组」选择原表行号,起始索引填0,命名为位置索引。
  • 第六步:透视列生成最终表格,选中位置索引列,点击顶部「转换」选项卡→「透视列」,弹出窗口中「值列」选择你刚才提取的数值列,「聚合值函数」选择「不要聚合」,确认后即可得到你需要的结构:每列对应原表一行JSON的3个值,每行对应相同位置索引的数值。

效果验证

以你给出的示例数据为例:

  • 原表行号1对应的数值列表为{1479,1481,1486},原表行号2对应的数值列表为{1351,1536,1356}
  • 透视后原表行号1就是新列1,原表行号2就是新列2,完全匹配你期望的输出结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 05:36:07