C# 如何使用nhibernate通过递归自连接SQL获得最佳性能
我有一个带有parentId的团队表/实体,parentId是自联接到同一个表中的id 有一个名为TopUnit的属性将递归地继续调用.Parent,直到它在名为“IsTopUnit”的团队实体上找到一个属性为止 使用nhibernate探查器,这将导致选择N+1警报。无论如何都要优化本质上是递归自连接查询的内容,以避免Select N+1行为 batchsize似乎适用于子集合,但在这种情况下似乎没有帮助,因为它完全是“同步的”,因为我不能执行递归SQL语句 我想这个问题在nhibernate之外也是有效的。在SQL中执行递归语句的最佳方法是什么。似乎您必须将其分解为多个查询。您可以尝试此操作查看以下内容:C# 如何使用nhibernate通过递归自连接SQL获得最佳性能,c#,sql-server,nhibernate,C#,Sql Server,Nhibernate,我有一个带有parentId的团队表/实体,parentId是自联接到同一个表中的id 有一个名为TopUnit的属性将递归地继续调用.Parent,直到它在名为“IsTopUnit”的团队实体上找到一个属性为止 使用nhibernate探查器,这将导致选择N+1警报。无论如何都要优化本质上是递归自连接查询的内容,以避免Select N+1行为 batchsize似乎适用于子集合,但在这种情况下似乎没有帮助,因为它完全是“同步的”,因为我不能执行递归SQL语句 我想这个问题在nhibernate