gpt4 book ai didi

sql-server - 为什么我的 Linqued 查询没有给出正确的结果?

转载 作者:行者123 更新时间:2023-12-03 09:51:40 25 4
gpt4 key购买 nike

我有这个 sql 查询,它给了我正确的结果,即使用 order by 子句按 A 到 Z 排序的所有员工姓名

select Distinct(EmpNTLogin),Employee from Attendance 
where CreateDate>='2016-01-01'
order by EmpNTLogin

当我在 Linq 中转换相同的查询时,我得到了正确的结果,但 order by 子句不起作用。这是我的链接查询

    var query = (from attendance in db.Attendances
orderby attendance.EmpNTLogin
where attendance.CreateDate.Value.Year >= 2016
select new { attendance.Employee, attendance.EmpNTLogin }).Distinct();

最佳答案

在 linq 查询中,distinct 应用于 orderby 之后,因此顺序被丢弃。

在调用distinct后应用orderby

var query = (from attendance in db.Attendances
where attendance.CreateDate.Value.Year >= 2016
select new
{
attendance.Employee,
attendance.EmpNTLogin
}).Distinct().OrderBy(att => att.EmpNTLogin);

关于sql-server - 为什么我的 Linqued 查询没有给出正确的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37111706/

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