我需要一点帮助将SQL转换为Linq。在MySQL中,这相当直观...
Table: customers
ID Name
1 Bill
2 John
Table: purchases
ID CustomerID CompletedTransaction
1 1 False
2 2 True
3 1 True
4 1 True
SELECT c.ID
c.Name,
COUNT(p.ID) AS TotalPurchases,
SUM(CASE WHEN p.CompletedTransaction = TRUE THEN 1 ELSE 0 END) AS TotalCompleted
FROM customers c
LEFT JOIN purchases p ON c.ID = p.CustomerID
GROUP BY c.ID
Expected Result:
1, Bill, 3, 2
2, John, 1, 1
我看过一些使用Linq实现左连接的例子,但不确定如何在其中包含SUM和Count。我在Linq中看到的示例是选择从组键中返回的字段。这是否意味着如果我在客户表中有更多字段,例如地址和其他联系详细信息,我需要将它们包含在连接中才能选择它们?希望这样说得清楚。感谢任何可以帮助或指向正确方向的链接。
谢谢。