有两个表,第一个User (id,name,no);第二个Score(id,no,sco)
其中第二个表的no是第一个表的no,
现在想查找满足sco>60的所有人的记录,怎么写Linq呢
using db= new DataContext(ConnectionString)
var query= From c in db.User
join d in db.Score
on c.no equals d.no
where d.sco>60
select c
end using
上面是连接到数据库的写法,
如果你的User和Score已经是有数据的,就不需要DB
不好意思,这里面VB.NET和C#语法都有,你将就着看吧。
如何让每个学生记录只出现一次,不要像截图那样每个学生出现多次
@GhostRider_zkc:
这个问题你好像另外起了一个博问,我也回答你了。再回答一次
var query= from c in db.User
where (from d in db.Score
where d.sco>60
select d.no).Contains(c.No)
select c
using(var db=new ManagerEntities()) { var result = from sc in db.SC join user in db.Student on sc.Sno equals user.Sno where sc.Score>60 select new { id = user.Sno, name = user.Sname, score = sc.Score, }; foreach (var sut in result) { Console.WriteLine(sut.id +" "+ sut.name +" "+ sut.score); } }
如何让每个学生记录只出现一次,不要像截图那样每个学生出现多次
@GhostRider_zkc: 这个可以用关键字取消,还是数据库的问题,设计的时候多注意一下~