Forum Discussion
How to import all columns from a JSON when not all the objects have the same keys
How to import something like this?
Cannot expand on 'ciudad', since it's not present in all objects.
I'm using Power Query in MS Excel for desktop.
[
{ "nombre": "Juan", "edad": 30, "ciudad": "Madrid" },
{ "nombre": "Ana", "edad": 25, "ciudad": null },
{ "nombre": "Luis", "edad": 40 }
]
Anonymous ,
Here are a few steps you can follow.
-
Load JSON: Go to Data > Get Data > From File > From JSON and load your file.
-
Convert to Table: Click To Table in Power Query.
-
Expand Columns: Use the Expand Column button (next to the column name). Missing keys will appear as null.
-
Handle Missing Keys: If a key (e.g., ciudad) is not in all objects, it will still create a column with null for missing values.
-
Load to Excel: Click Close & Load to return the data to Excel.
This ensures all potential columns are imported, including those with missing keys.
-
4 Replies
- OwenAugerSuper User
Hi Anonymous
Here's how I would set up the query:
let // Connect to JSON file SourceJSON = "[ { ""nombre"": ""Juan"", ""edad"": 30, ""ciudad"": ""Madrid"" }, { ""nombre"": ""Ana"", ""edad"": 25, ""ciudad"": null }, { ""nombre"": ""Luis"", ""edad"": 40 } ]", #"JSON to Records" = Json.Document(SourceJSON), #"Records to Table" = Table.FromRecords( #"JSON to Records", type table [nombre = nullable text, edad = nullable Int64.Type, ciudad = nullable text], MissingField.UseNull ) in #"Records to Table"Replace the first step as required.
Does this work for you?
- rohit1991Super User
Anonymous ,
Here are a few steps you can follow.
-
Load JSON: Go to Data > Get Data > From File > From JSON and load your file.
-
Convert to Table: Click To Table in Power Query.
-
Expand Columns: Use the Expand Column button (next to the column name). Missing keys will appear as null.
-
Handle Missing Keys: If a key (e.g., ciudad) is not in all objects, it will still create a column with null for missing values.
-
Load to Excel: Click Close & Load to return the data to Excel.
This ensures all potential columns are imported, including those with missing keys.
-
- v-priyankataCommunity Support
Hi Anonymous
May I ask if you have resolved this issue? If so, please mark the helpful reply and accept it as the solution. This will be helpful for other community members who have similar problems to solve it faster.
Thank you.
- v-priyankataCommunity Support
Hi Anonymous
I wanted to check if you had the opportunity to review the information provided. Please feel free to contact us if you have any further questions. If my response has addressed your query, please accept it as a solution and give a 'Kudos' so other members can easily find it.
Thank you.