I have a list of computers in an array. I would like to aggregate entries with identical IP addresses and create an array called data
and append the duplicates there. Below is an example of the input and desired output. I have tried a couple different options, but can't find a solution.
Input
[
{
"name": "computera",
"Computer_Name": "computera",
"Serial_Number": "computera",
"IP_Address": "8.8.8.8"
},
{
"name": "computerb",
"Computer_Name": "computerb",
"Serial_Number": "computerb",
"IP_Address": "8.8.8.8"
},
{
"name": "computerc",
"Computer_Name": "computerc",
"Serial_Number": "computerc",
"IP_Address": "1.2.3.4"
}
]
Desired output
{
"ip": "8.8.8.8",
"data": [
{
"name": "computera",
"Computer_Name": "computera",
"Serial_Number": "computera",
"IP_Address": "8.8.8.8"
},
{
"name": "computerb",
"Computer_Name": "computerb",
"Serial_Number": "computerb",
"IP_Address": "8.8.8.8"
}
]
}
{
"ip": "1.2.3.4",
"data": [
{
"name": "computerc",
"Computer_Name": "computerc",
"Serial_Number": "computerc",
"IP_Address": "1.2.3.4"
}
]
}