SQL Server 2008 R2 - 选择分层数据

发布于 2024-11-08 04:36:49 字数 279 浏览 0 评论 0原文

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

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

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

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

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

I have a table in SQL Server which holds categories and sub-categories. They are connected by a relation between ID and PID.

Top level items have a PID of 0 and other rows have the PID of their parents.

What would be the most efficient way to get this data?

The naive algorithm for this would be to loop through the list of parents and then get the children for each parent in a different query (either against the DB or the dataset).

Is there any methods built in to the framework to support a better way of doing this? Something that will allow me to easily bind to a repeater (or other data control).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

べ映画 2024-11-15 04:36:49

假设至少是 SQL Server 2005,我将针对 递归公用表表达式使用单个查询

Assuming at least SQL Server 2005 I'd use a single query against a recursive common table expression.

青丝拂面 2024-11-15 04:36:49

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

You could use Comman Table Expression to get the hierarchical data in Sql Server.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文