如何使用LINQ查询从Employee表和salary表中计算第五最高工资
表1:EmolyeeTable如何使用LINQ查询从Employee表和salary表中计算第五最高工资,linq,Linq,表1:EmolyeeTable Eid Ename 1 Jonh 2 James 3 Raj 4 Tisan 5 Jack 表2:工资表 Sid Salary Eid 1 10000 1 2 20000 2 3 30000 3 4 40000 4 5 50000 5 我想使用LINQ查询输出第五个heighest Ename和salary O/p: 您可以使用: 连接
Eid Ename
1 Jonh
2 James
3 Raj
4 Tisan
5 Jack
表2:工资表
Sid Salary Eid
1 10000 1
2 20000 2
3 30000 3
4 40000 4
5 50000 5
我想使用LINQ查询输出第五个heighest Ename和salary
O/p:
您可以使用:
连接两个表
按工资对会员进行分类
携带一定数量的物品
示例:您需要添加足够的检查:
目前还不清楚你是在寻找最高工资还是第五高工资。在这两种情况下,您都可以使用Join和OrderBy 为了最高的薪水,你可以这样做
var result = employees.Join(salaries,e=>e.Eid,s=>s.Eid,(e,s)=> new {Name=e.EName,Salary=s.Salary})
.OrderByDescending(x=>x.Salary).First();
对于第五高的薪水,你可以使用Skip,除此之外。比如说,
var result = employees.Join(salaries,e=>e.Eid,s=>s.Eid,(e,s)=> new {Name=e.EName,Salary=s.Salary})
.OrderByDescending(x=>x.Salary).Skip(4).First();
var result = employees.Join(salaries,e=>e.Eid,s=>s.Eid,(e,s)=> new {Name=e.EName,Salary=s.Salary})
.OrderByDescending(x=>x.Salary).First();
var result = employees.Join(salaries,e=>e.Eid,s=>s.Eid,(e,s)=> new {Name=e.EName,Salary=s.Salary})
.OrderByDescending(x=>x.Salary).Skip(4).First();