我有一个人表,其中有 100 人,其中 80 人是学生,在这 80 人中只有 50 人注册,我尝试制作一个left join
(Sql Server),以便它向我显示存在的学生,即使他们不存在注册
存储路线、平行、转弯信息的表是MATRICULA
var persona = (from p in db.Persona // cantidad de Personas _________________________ 100
join co in db.Colegio on p.CodColegio equals co.IdColegio
join al in db.Alumno on p.CodPersona equals al.CodPersona // cantidad de personas que son alumnos___________ 80
join ma in db.Matricula on al.CodAlumno equals ma.CodAlumno // cantidad de añumnos que estan matriculados ___ 50
join cu in db.Curso on ma.CodCurso equals cu.CodCurso // los _ 50 _ tienen curso asignado
join pa in db.Paralelo on ma.CodParalelo equals pa.CodParalelo // los _ 50 _ tienen paralelo asignado
join tu in db.Turno on ma.CodTurno equals tu.CodTurno // los _ 50 _ tienen turno asignado
where p.NombreCompleto.ToUpper().Replace(" ", string.Empty) == nombre.ToUpper().Replace(" ", string.Empty)
select new
{
CodPersona = p.CodPersona,
NombreCompleto = p.NombreCompleto,
CodColegio = p.CodColegio,
colegio = co.Nombre,
curso = cu.Descripcion,
paralelo = pa.Descripcion,
turno = tu.Descripcion
}).FirstOrDefault();
使用可以进行左连接的方法,
DefaultIfEmpty()
我给你一个例子Persona
Colegio
我认为你可以做到这一点
--------SQL查询