如何使用sql联接为相关表设计正确的数据模型?
我有一个关系为“一个组织”的组织表,它将有“多个子组织”和“正好两个主管”。监督员角色ID与其他角色一起映射到角色表“ID”如何使用sql联接为相关表设计正确的数据模型?,sql,sql-server,database,join,data-analysis,Sql,Sql Server,Database,Join,Data Analysis,我有一个关系为“一个组织”的组织表,它将有“多个子组织”和“正好两个主管”。监督员角色ID与其他角色一起映射到角色表“ID” Organization table: ID, OrgName, OrganizationTypeID,OrgModifiedDate OrganizationType : ID, TypeName SubOrg Table : ID, OrgID, SubOrgName, SuborgModifiedDate Users Table : Id,
Organization table: ID, OrgName, OrganizationTypeID,OrgModifiedDate
OrganizationType : ID, TypeName
SubOrg Table : ID, OrgID, SubOrgName, SuborgModifiedDate
Users Table : Id, RoleID , RoleName, OrgID, SubOrgID, UserModifiedDate
关系是一个组织可以有多个组织,每个组织的主管人数为2人
当我将上面的表与下面的查询连接起来时,它会给我多行重复数据
select distinct
o.id OrgID,
o.name as OrgName,
ot.Name as orgTypeName,
isnull (o.ModifiedOn, o.Createdon) as Org_ModifiedDate,
s.id SubOrgID,
s.name as suborgName,
isnull(s.ModifiedOn,s.CreatedOn) as SubOrg_ModifiedDate,
u.Name SupervisorName,
u.RoleID SupervisorID,
u.id UserID
from users u left join Organizations o on U.OrgID = o.id
left join Suborganizations s on s.orgID = o.Id
left join OrganizationTypes ot on o.OrganizationTypeid = ot.id
where U.RoleID = '9774904F-E74E-4F59-9552-FB3DC233D25B'
在我的PowerBI模型中,我必须在如下图所示的表格中显示数据,我认为您应该在需要时将表格拆分为更多的表格。如上所述,我不这么认为,如果它确实有助于将子RGS规范化为子RGS表格和其他表格,那么就只有2个表格
Organization and Users
组织机构表:
ID, TypeName,OrgName
SubOrgName, OrgModifiedDate
, SuborgModifiedDate
用户表:
Id, RoleID , RoleName, OrgID,
UserModifiedDate
质疑
您没有告诉我们所需的输出如何是输入的函数,那么为什么您希望我们能够告诉您什么是正确的查询呢?你没有给我们与期望输出相对应的输入,那么为什么你希望我们能够猜出这个函数是什么呢?(你也漏掉了你的“图片”。但不要给图片,给文字。)请给一个。PS尽管FK通常(错误地)称为“关系”,但它们是(基数)约束。表(基本和查询结果)表示关系(发货)和关联。我们不需要知道查询的约束条件。@philipxy correct mate.。但是不要对OP苛刻,因为OP是一个newbie@HimanshuAhuja我认为这个评论并不苛刻。你认为这有什么苛刻之处?我认为这些半修辞性的问题对于提问者来说是很重要的,他们可以自己问自己,自己回答。
Select column1, column2.... From
users u left join Organizations o on
u.Id=o.Id where where U.RoleID =
'9774904F-E74E-4F59-9552-
FB3DC233D25B'