我有一个Web服务,它的方法之一返回的项目列表,每个拥有项目的另一个列表:我可以从SQL Server存储过程中检索分层数据结构吗?
<TopLevelItems>
<TopLevelItem field1="a" field2="b" ...>
<LowLevelItem fieldA="1" fieldB="2" .../>
<LowLevelItem fieldA="3" fieldB="4" .../>
</TopLevelItem>
</TopLevelItems>
这些列表是从SQL Server数据库使用简单的查询(包括TopLevelItem
和LowLevelItem
检索对应于数据库中的相关表格)。直到现在,为了检索所有这些数据,我需要两个查询:一个用于检索顶层项目,它被执行一次;另一个检索低级项目,每个顶级项目执行一次。
但是,这似乎是非常低效的。我想定义一个存储过程来执行所有必要的查询,并将结果作为分层数据结构进行检索。可能吗?如果是这样,怎么样?