我有一个看起来像这样的数据模型:
文档具有一对多属性 文档具有一对多属性
我想创建一个视图,其中包含文档,属性和属性,但每个文档仅包含一行。通常,像上面这样的视图将通过LEFT OUTER JOINs完成每个Document-> Attribute和Document-> Property一行。
我想将所有属性合并为一个“列”,将属性合并为一个“列”,如下所示:
文档1,属性A,属性B,属性C,属性1,属性2
有没有关于如何将它们聚集在一起的指针?
CREATE VIEW [dbo].[DocSearch]
AS
SELECT N.Id, N.CreatedBy, N.CreatedOn, N.ModifiedBy, N.ModifiedOn, N.DocumentContext, N.DocumentSource,
N.DocumentText, N.DocumentType, N.Confidentiality, N.ExpirationDate, S.PropertyName,
R.AttributeName, N.RowVersion
FROM dbo.Document AS N LEFT OUTER JOIN
dbo.DocumentProperty AS NS ON N.Id = NS.DocumentId LEFT OUTER JOIN
dbo.Property AS S ON NS.PropertyId = S.Id LEFT OUTER JOIN
dbo.DocumentAttribute AS NR ON N.Id = NR.DocumentId LEFT OUTER JOIN
dbo.Attribute AS R ON NR.AttributeId = R.Id
每个文档都希望将属性和属性归为一列。