[英]LINQ lambda expression subquery to find a parent record in the same table
是否可以使用lambda表達式在C#中運行此查詢?
SELECT Name
FROM Table
WHERE ID IN (SELECT ParentId FROM Table WHERE Name = 'Child')
所以每行都有一個ID
和一個ParentId
。 我需要按Name
搜索子記錄以獲取ParentId
,這是我想要檢索Name
的父ID
。
檢查此代碼:
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;
}
}
我希望它會對你有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.