gpt4 book ai didi

c# - LINQ lambda 表达式子查询在同一表中查找父记录

转载 作者:太空宇宙 更新时间:2023-11-03 23:19:13 51 4
gpt4 key购买 nike

是否可以使用 lambda 表达式在 C# 中运行此查询?

SELECT Name
FROM Table
WHERE ID IN (SELECT ParentId FROM Table WHERE Name = 'Child')

因此每一行都有一个ID 和一个ParentId。我需要通过 Name 搜索子记录以获取 ParentId,这是父项的 ID 我想检索 Name 为。

最佳答案

检查这段代码:

var l = Table.Where(x => Table.Where(n => n.Name == "child")
.Select(n => n.ParentId).Any(y => y == x.Id)).Select(y=>y.Name);

我用这个类来测试结果:

class Person
{
public int Id { get; set; }
public int ParentId { get; set; }
public string Name { get; set; }

public Person(int id, int parentId, string name)
{
Id = id;
ParentId = parentId;
Name = name;
}
}

希望对您有所帮助。

关于c# - LINQ lambda 表达式子查询在同一表中查找父记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36022964/

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