Я пытаюсь (и не могу) преобразовать приведенный ниже запрос sql в запрос linq. Буду признателен за любой совет о том, как добиться подсчета и суммы на левых соединениях:
SELECT cts.CategoryStructureID,
cts.Description,
COUNT(gli.ProductId) AS UniqueProducts,
ISNULL(SUM(gli.Quantity),0) AS TotalProducts
FROM CategoryStructure cts
LEFT JOIN CategoryStructure cs
ON LEFT(cs.StructureCode, 3) = cts.StructureCode
JOIN Category_Product cp
ON cs.CategoryStructureID = cp.CategoryStructureID
JOIN Product p
ON cp.ProductId = p.ProductId
LEFT JOIN GiftListItem gli
ON p.ProductId = gli.ProductId AND gli.GiftListId = @giftListId
GROUP BY cts.CategoryStructureID,
cts.Description
Желаемый результат соответствует приведенным ниже:
CategoryStructureID Description UniqueProducts TotalProducts
1397 Garden & DIY 2 40
1366 Bed & Bath 16 114
1186 Tableware 18 322
1435 Travel & Experiences 0 0
1461 Funds 0 0
1244 Home & Furniture 4 24
1308 Kitchen 2 40
1411 Lifestyle 0 0