我想将以下SQL代码转换为linq到sql但似乎无法找到方法
select holder_name,agent_code,sum(total)
from agent_commission
group by agent_code
任何人都可以帮助我吗?我有点坚持这一点。
提前致谢
更新: 我尝试了以下
var query = (from p in context.Agent_Commissions
group p by new
{
p.agent_code
}
into s
select new
{
amount = s.Sum(q => q.total),
}
);
如何选择其他两列?我错过了什么?
答案 0 :(得分:3)
事实上,当SQL query
和holder_name
之间的对应关系为agent_code
时,1-1
仅适用于,否则为Group by agent_code
不行。所以你的linq query
应该是这样的:
var query = from p in context.Agent_Commissions
group p by p.agent_code into s
select new {
holder_name = s.FirstOrDefault().holder_name,
agent_code = s.Key,
amount = s.Sum(q => q.total)
};
答案 1 :(得分:0)
这是你的linq查询
from a in ctx.agent_code
group a by a.holder_name, a.code into totals
select { holder_name = a.holder_name,
code = a.code,
total = totals.Sum(t=>t.total)}
鉴于你在ctx
变量中有linq2sql上下文并且它中包含你的表。