gpt4 book ai didi

c# - 使用 Entity Framework 在 SQL 中选择 UNTIL

转载 作者:太空宇宙 更新时间:2023-11-03 18:33:17 25 4
gpt4 key购买 nike

我想选择行,直到找到某个数字 Id。如果我的数据是按 Id 排序的,问题就很容易解决。

Id    Name
-----------
1 Bob
2 Eve
3 Alice
4 Michael
5 Anne
6 Mike

要获取所有项目直到找到 Id 4,以下 SQL 语句就足够了:

SELECT * FROM Users WHERE Id <= 4

如果数据是按 Name 排序的,我仍然想在找到 Id 4 之前获取这些项目,我想不出一个好的解决方案。

Id    Name
-----------
3 Alice
5 Anne
1 Bob
2 Eve
4 Michael
6 Mike

要定义的语句的输出应该是:

Id    Name
-----------
3 Alice
5 Anne
1 Bob
2 Eve
4 Michael

编辑 1:

使用以下语句,输出几乎是我需要的,但缺少 Id 为 4 的项目。

queryable.OrderBy(o => o.Name).TakeWhile(o => o.Id != 4);

Id Name
-----------
3 Alice
5 Anne
1 Bob
2 Eve

是否也可以包含 ID 为 4 的项目?

编辑 2:

现在我将采用这种方法:

queryable.OrderBy(o => o.Name).TakeWhile(o => o.Id != 4).Union(queryable.Where(o => o.Id == 4))

由于 Id 是唯一的,因此 UNION 语句应该没有问题。但我不确定这种说法是否是最有效的。

最佳答案

Context.Table.OrderBy(p => p.Name).TakeWhile(p => p.id != 4);

关于c# - 使用 Entity Framework 在 SQL 中选择 UNTIL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19332714/

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