我在 sql 上做這個查詢,它可以作業,但我如何讓它到 Linq 呢?
選擇 b.Name,a.idempresa,count(1) as cuenta from Descarga_XML_recepcion_V2 作為內部連接 ??EnterpriseSGE as b on a.idempresa = b.EnterpriseSGEId group by idempresa,b.name
這是它應該帶來的
name1 | 5041 | 583
name2 | 4031 | 1730
name3 | 5042 | 640
name4 | 4034 | 300
name5 | 6047 | 861
name6 | 5043 | 187
name7 | 4033 | 318
uj5u.com熱心網友回復:
將 SQL 直接轉換為 LINQ 會產生:
var ans = from a in Descarga_XML_recepcion_V2
join b in EnterpriseSGE on a.idempresa equals b.EnterpriseSGEId
group 1 by new { a.idempresa, b.name } into ingroup
select new {
ingroup.Key.idempresa,
ingroup.Key.name,
cuenta = ingroup.Count()
};
uj5u.com熱心網友回復:
嘗試 :
var results = (from a in Descarga_XML_recepcion_V2
join b in EnterpriseSGE on a.idempresa equal b.EnterpriseSGEId
select new { a = a, b = b})
.GroupBy(x => new { idempresa = x.a.idempresa, name = x.b.name})
.Select(x => new {name = x.Key.name, idempresa = x.Key.idempressa, count = x.Count()})
.ToList();
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/510717.html
標籤:C#sql林克
