【发布时间】:2011-07-16 18:28:25
【问题描述】:
我有一个 Web 服务,其中一个方法返回一个项目列表,每个项目都拥有另一个项目列表:
<TopLevelItems>
<TopLevelItem field1="a" field2="b" ...>
<LowLevelItem fieldA="1" fieldB="2" .../>
<LowLevelItem fieldA="3" fieldB="4" .../>
</TopLevelItem>
</TopLevelItems>
这些列表是使用简单查询从 SQL Server 数据库中检索出来的(TopLevelItem 和 LowLevelItem 都对应于数据库中的相关表)。
到目前为止,要检索所有这些数据,我需要两个查询:一个是检索顶级项目,它已执行一次;另一个用于检索低级项目,每个顶级项目执行一次。
但是,这似乎非常低效。我想定义一个存储过程来执行所有必要的查询并将结果作为分层数据结构检索。可能吗?如果有,怎么做?
【问题讨论】:
标签: sql-server hierarchy hierarchical-data hierarchical-query