将此 LINQ 表达式转换为 SQL 服务器查询
Transform this LINQ expression to SQL server query
我在 Entity Framework:
中使用 LINQ 方法编写了此查询
var items = db.Items.ToList();
var unique_items = items.OrderBy(c => c.date)
.GroupBy(c => c.title)
.Select(group => group.First()).ToList();
项目 return例如:
id title date
-----------------------
1 car1 02-05-2019
2 car2 02-06-2019
3 car2 02-07-2019
4 car4 02-05-2019
5 car1 02-04-2019
和unique_items应该return这个:
1 car1 25-10-2019
3 car2 25-10-2019
4 car4 25-12-2019
我只想要独特的标题。
现在我想使用 SQL 服务器查询在数据库中创建视图,我尝试使用 Group By
和 Distinct
但我做不到因为使用不同于 LINQ 查询,有人可以帮忙吗?
类似于以下内容,但我只想使用 EF6's logging 来捕获查询并按原样使用它:
SELECT id, title, date
FROM (
SELECT id,title,date, ROW_NUMBER() OVER (PARTITION BY title ORDER BY date) AS rn
FROM Items
) t1
WHERE t1.rn=1
ORDER BY date
我在 Entity Framework:
中使用 LINQ 方法编写了此查询var items = db.Items.ToList();
var unique_items = items.OrderBy(c => c.date)
.GroupBy(c => c.title)
.Select(group => group.First()).ToList();
项目 return例如:
id title date
-----------------------
1 car1 02-05-2019
2 car2 02-06-2019
3 car2 02-07-2019
4 car4 02-05-2019
5 car1 02-04-2019
和unique_items应该return这个:
1 car1 25-10-2019
3 car2 25-10-2019
4 car4 25-12-2019
我只想要独特的标题。
现在我想使用 SQL 服务器查询在数据库中创建视图,我尝试使用 Group By
和 Distinct
但我做不到因为使用不同于 LINQ 查询,有人可以帮忙吗?
类似于以下内容,但我只想使用 EF6's logging 来捕获查询并按原样使用它:
SELECT id, title, date
FROM (
SELECT id,title,date, ROW_NUMBER() OVER (PARTITION BY title ORDER BY date) AS rn
FROM Items
) t1
WHERE t1.rn=1
ORDER BY date