我使用的是 SQL Server 2012。我有一个用于类别、页面和部分的表的层次结构。
每个类别有零个或多个页面,每个页面有零个或多个部分。我想显示与某个查询匹配的所有类别以及它们各自的所有页面,与它们一致,然后显示所有这些页面的各自部分。
例如:
Category 1:
Page A
Page B
Category 2
Page C (section 1, section 2, section 3)
据我所知,这需要对类别进行一次查询,然后在遍历类别时,我需要进行 2 页查询(例如,SELECT * FROM pages P WHERE P.category = 1)。最后,对于每个页面,我需要进行一个部分查询(总共 3 个)。这意味着我必须进行 6 次查询才能获得上面的数据。有没有更好的办法?