我想翻譯這個SQL語句中的LINQ,但我在LINQLINQ用SUM()連接
select professor.nom, professor.llinatge,
SUM(case when falta.aprovada = 1 then 1 else 0 end) as FJ,
SUM(case when falta.aprovada = 0 then 1 else 0 end) as FNJ
from falta inner join professor on falta.id_profe = professor.id_profe
group by professor.llinatge, professor.nom
很新,我不能得到的JOIN工作這LINQ。我在LINQ中最好的解答是:
var query = from f in db.falta
join p in db.professor
on f.id_profe equals p.id_profe
group f by new {p.nom, p.llinatge, f.aprovada} into g
select new
{
nombre = g.Key.nom + " "+ g.Key.llinatge,
fj = g.Select(s=> s.aprovada == true).Count(),
fnj = g.Select(s=> s.aprovada == false).Count()
};
謝謝!
爲什麼在LINQ版本中有'group by f.aprovada'而不是SQL版本? –
你是可靠的,這對我的查詢沒有必要。我很困擾這部分...... –
「我無法工作」 - 你能更具體嗎?你會得到什麼錯誤? –