想知道是否有人可以就如何最有效地规范化下表提供一些指导,以便我可以创建可刷新的视图/表。
表格1:
SYSTEM_KEY | ID | ORDER | ORDER_STATUS | SYSTEM_Actions
A 1 Pencil Open Shipped
B 1 Pencil Open Tested
C 1 Pencil Open Shipped
A 1 Paper Closed Delivered
我希望以可重复的方式将此表标准化为如下所示:
结果:
ID | ORDER | Order Status | A_actions | B_Actions | C_Actions
1 Pencil OPEN Shipped Tested Delivered
1 Paper Closed Delivered null null
我能够通过做类似的事情来实现这一点
Select full.ID, full.order, full.orderstatus, case when system_ID = 'A' then sysa.system_actions as A_actions, ....{for B, C}
from table1 full
left join table1 sysa on full.id = sysa.id and full.order = sysa.order
left join table1 sysb on full.id = sysb.id and full.order = sysb.order
虽然这似乎可行,但在必须使用多个临时表的可重复性方面非常笨拙。
有谁知道我是否可以实现这一目标的好方法?