Select 个来自相同 table 的类别和子类别

Select categories and sub-categories from the same table

我遇到了一个数据库场景,在该场景中我必须检索单个 table 中的产品及其包。 注意:层次结构只是一层,例如,Package1 => Cola。套餐 2 => 薯条、汉堡。 Package3 => Coffee 等,即两列

我有三个 table:产品、核心、层次结构。

Products 包含产品和构成其他产品的包裹。

核心指定是包裹还是散装产品。

层次结构 指定包 ID

如何 select 所有包装及其产品,以便所有产品都按其 parent/package 分组? (即两列)

期望的输出:

这是简单的联接,因为您只有 1 级层次结构:

select p2.Name as Package, 
       p1.Name as [Product(Loose)]
from Hierarchy h
join Products p1 on h.ID = p1.ID
join Products p2 on h.ParentID = p2.ID