这将是我在这里发布的第一个问题,因此请原谅任何无意识的董事会礼仪失误.
在我当前的项目中,我采用了一个非规范化的大型表,并将其分解为四个独立的规范化表.我接触到这个板的最终目标是创建一个模拟非规范化表以便向后兼容的视图.
为了提供我的场景的简化快照,我正在尝试做的关键在于两个表:
ASSOC_ROLE ASSOCIATE
---------- ----------
assoc_id (fk) assoc_id (pk)
role_id (fk) last_name
org_nbr (fk)
Run Code Online (Sandbox Code Playgroud)
所以,如果我发出以下查询......
SELECT Assoc_Role.org_nbr, Assoc_Role.assoc_id, Associate.last_name, Assoc_Role.role_id
FROM Assoc_Role INNER JOIN
Associate ON Assoc_Role.assoc_id = Associate.assoc_id
WHERE Assoc_Role.org_nbr = '1AA'
Run Code Online (Sandbox Code Playgroud)
...我得到以下结果集
org_nbr assoc_id last_name role_id
------- -------- --------- -------
1AA 1447 Cooper 1
1AA 1448 Collins 3
1AA 1448 Collins 4
1AA 1448 Collins 5
1AA 1449 Lynch 6
Run Code Online (Sandbox Code Playgroud)
最终,我想构建的视图看起来像这样:
org_nbr role1_ID role1_name role2_ID role2_name role3_ID role3_name role4_ID role4_name role5_ID role5_name role6_ID role6_name
------- -------- …Run Code Online (Sandbox Code Playgroud)