Considering:
f1.csv:
SkuID,SkuStatusCode,QuantityOnHand 1828,True,441 3022,True,325 2981,True,214 2989,True,842
f2.csv:
SkuID,RegularPrice,CurrentPrice 1828,49.99,48.99 3022,25,19.99 2981,45,39.99 2989,28,18.99
Try this contrived solution, not as good as join-object , because you need to know the properties. You should also be careful with the + operator between $a and $b , which is not commutative, it changes the order of the groups:
$a = Import-Csv C:\temp\f1.csv $b = Import-Csv C:\temp\f2.csv $b + $a | Group-Object -Property skuId | % {$x= New-Object -TypeName psCustomObject -Property @{SkuID=$_.name;RegularPrice=$_.group[0].RegularPrice; CurrentPrice=$_.group[0].CurrentPrice; SkuStatusCode=$_.group[1].SkuStatusCode;QuantityOnHand=$_.group[1].QuantityOnHand}; $x}
for me it gives:
QuantityOnHand : 441 RegularPrice : 49.99 SkuStatusCode : True SkuID : 1828 CurrentPrice : 48.99 QuantityOnHand : 325 RegularPrice : 25 SkuStatusCode : True SkuID : 3022 CurrentPrice : 19.99 QuantityOnHand : 214 RegularPrice : 45 SkuStatusCode : True SkuID : 2981 CurrentPrice : 39.99 QuantityOnHand : 842 RegularPrice : 28 SkuStatusCode : True SkuID : 2989 CurrentPrice : 18.99
source share