正如其他人所说,您可能应该评估您是否真的需要您认为需要的视图。但如果你真的想要它,你可以在 MSSQL 中使用 PIVOT:
WITH BaseData AS
(
    SELECT Serial
        ,DocumentBody
        ,MimeType
        ,LastModified
        ,ROWNUMBER() OVER(PARTITION BY Serial ORDER BY LastModified) AS RowNum
    FROM Pictures) AS t
),
DocumentPivot AS (
    SELECT 
        Serial
        ,DocumentBody
        ,'DocumentBody' + RowNum AS ColumnName
    FROM BaseData
),
MimePivot AS (
    SELECT 
        Serial
        ,MimeType
        ,'MimeType' + RowNum AS ColumnName
    FROM BaseData
),
ModifiedPivot AS (
    SELECT 
        Serial
        ,LastModified
        ,'LastModified' + RowNum AS ColumnName
    FROM BaseData
)
SELECT Description
    ,Year
    ,Make
    ,Model
    ,Inventory.Serial
    ,DocumentBody1
    ,MimeType1
    ,LastModified1
    ,DocumentBody2
    ,MimeType2
    ,LastModified2
    ,...
    ,LastModified10
FROM Inventory
    LEFT OUTER JOIN (
        SELECT Serial
            ,DocumentBody1
            ,DocumentBody2
            ,...
            ,DocumentBody10
        FROM DocumentPivot
            PIVOT (MAX(DocumentBody) FOR ColumnName IN (DocumentBody1, DocumentBody2, ..., DocumentBody10)) AS P1
    ) AS Documents
        ON Documents.Serial=Inventory.Serial
    LEFT OUTER JOIN (
        SELECT Serial
            ,MimeType1
            ,MimeType2
            ,...
            ,MimeType10
        FROM MimePivot
            PIVOT (MAX(MimeType) FOR ColumnName IN (MimeType1, MimeType2, ..., MimeType10)) AS P2
    ) AS Mimes
        ON Mimes.Serial=Inventory.Serial
    LEFT OUTER JOIN (
        SELECT Serial
            ,LastModified1
            ,LastModified2
            ,...
            ,LastModified10
        FROM ModifiedPivot
            PIVOT (MAX(LastModified) FOR ColumnName IN (LastModified1, LastModified2, ..., LastModified10)) AS P3
    ) AS Modifieds
        ON Modifieds.Serial=Inventory.Serial