gpt4 book ai didi

c# - 使用 Linq 从数据库中获取项目的最小值和最大值

转载 作者:行者123 更新时间:2023-11-30 19:08:56 24 4
gpt4 key购买 nike

在数据库中我有:

    Name         Value
First Player 300
First Player 500
First Player 250
SecondPlayer 200
Second Player 450

我需要向每个玩家展示最大和最小值:

Name       MaxValue   MinValue
FirstPlayer 500 250
SecondPlayer 450 200

我这样做了:

var res = (from item in _context.Players
select item).Max(s=>s.Value);

但它只有一个玩家具有最大值;

最佳答案

查询语法:

var result = (from item in _context.Players
group item by name into @group
select new
{
Name = @group.Key,
MaxValue = @group.Max(i=>i.Value),
MinValue = @group.Min(i=>i.Value)
}).ToList();

或者在一个很好的 linq 方法语法中:(这个重载基本上让你在 .GroupBy()

“中”执行 .Select()
var result = _context.Players.GroupBy(item => item.Name, (key, @group) => new
{
Name = key,
MaxValue = @group.Max(i => i.Value),
MinValue = @group.Min(i => i.Value)
}).ToList();

关于c# - 使用 Linq 从数据库中获取项目的最小值和最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38458359/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com