【问题标题】:SQL Server 2008 R2 - select hierarchical dataSQL Server 2008 R2 - 选择分层数据
【发布时间】:2011-05-18 11:26:54
【问题描述】:

我在 SQL Server 中有一个包含类别和子类别的表。它们通过ID 和PID 之间的关系连接。

顶级项目的 PID 为 0,其他行的 PID 为父项。

获取这些数据的最有效方法是什么?

对此的简单算法是遍历父母列表,然后在不同的查询(针对数据库或数据集)中获取每个父母的孩子。

框架中是否有内置方法来支持更好的方法?可以让我轻松绑定到中继器(或其他数据控件)的东西。

【问题讨论】:

    标签: sql-server performance sql-server-2008-r2


    【解决方案1】:

    假设至少 SQL Server 2005 我会针对 recursive common table expression 使用单个查询。

    【讨论】:

    • 抱歉,标题已更新为 SQL Server 的版本。我会检查链接。谢谢!
    • 能否请您指出一个在 C# 中使用结果的好资源?显示数据的推荐控件/方法是什么?是否有允许简单绑定的现有控件?\
    • 我的 C# 有点生锈,但您只需将其绑定到中继器,就像任何其他查询结果一样。
    • 我不确定中继器会自动知道如何显示这些数据(在某种层次结构中),这是我试图弄清楚的一部分。
    • 谢谢!这正是我需要让我继续前进的原因。
    【解决方案2】:

    您可以使用Comman Table Expression 来获取Sql Server 中的分层数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-06-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多