将 json 列表记录转换为 PowerBI 中的表值

2024-01-16

我对 Power BI 完全陌生,因此我尝试了不同的方法将 JSON 文件转换为表,但到目前为止尚未成功。

{
    "Family": [
        {
            "Father": "F1",
            "Age": 50,
            "Mother": "M1",
            "MAge": 49,
            "Children": [
                {
                    "Name": "C1"
                },
                {
                    "Name": "C2"
                }
            ]
        },
        {
            "Father": "F2",
            "Age": 55,
            "Mother": "M2",
            "MAge": 53,
            "Children": [
                {
                    "Name": "Cc1"
                },
                {
                    "Name": "Cc2"
                }
            ]
        }
    ]
}

我正在尝试将其转换为下表

Father    Age      Mother    MAge
F1         50        M1        49

F2         55        M2        53

我尝试过转换表和转置,但这不起作用我总是收到类似的错误

Expression.Error:我们无法将 Record 类型的值转换为 type


让我为那些想要在不编写 Power Query 的情况下使用 Power BI 用户界面(桌面/Web)执行此操作的人分享分步指南。

  1. 打开 Power BI 桌面

  2. Get DataMore ...→ 选择JSON从列表中单击“连接”(您还可以使用 WEB API 或其他为您提供 JSON 数据的来源)

  3. 选择 JSON 文件并将其打开。

  4. 在数据面板中,您可以看到 Family|List。点击List添加导航步骤的链接。

  5. 在“变换”选项卡中,单击To Table然后从对话框中单击OK.

  6. From the header of "Column1", click on Expand columns button expand columns to expand columns and from the menu, uncheck Use original column name as prefix and check the columns that you want and click on OK.

  7. You will see the columns and data in table format. You can change data type of columns by click on data type button change data type.

最后你会得到这样的东西:

最后,如果您想查看生成的查询,请单击高级编辑器按钮并查看代码:

let
    Source = Json.Document(File.Contents("C:\Users\rag\Desktop\data.json")),
    Family = Source[Family],
    #"Converted to Table" = Table.FromList(Family, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    #"Expanded Column1" = Table.ExpandRecordColumn(#"Converted to Table", "Column1", {"Father", "Age", "Mother", "MAge"}, {"Father", "Age", "Mother", "MAge"}),
    #"Changed Type" = Table.TransformColumnTypes(#"Expanded Column1",{{"Age", type number}, {"MAge", type number}})
in
    #"Changed Type"

更多信息:

  • Power BI Desktop 入门 https://learn.microsoft.com/en-us/power-bi/fundamentals/desktop-getting-started?WT.mc_id=DT-MVP-5003235
  • 在 Power BI Desktop 中塑造和组合数据 https://learn.microsoft.com/en-us/power-bi/connect-data/desktop-shape-and-combine-data?WT.mc_id=DT-MVP-5003235
  • 在 Power BI Desktop 中执行常见查询任务 https://learn.microsoft.com/en-us/power-bi/transform-model/desktop-common-query-tasks?WT.mc_id=DT-MVP-5003235
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 json 列表记录转换为 PowerBI 中的表值 的相关文章

随机推荐