在此查询中使用 Blob 列要求查询主题必须具有键或唯一索引

Using a Blob Column in this Query Requires that the Query Subject Must Have Either a Key or a Unique Index

我有以下代码:

SELECT  boo_event 'Orden de Trabajo' ,STUFF((SELECT ', ' + CAST(boo_person AS VARCHAR(100)) [text()]    
    FROM R5BOOKEDHOURS 
    WHERE boo_event = t.boo_event
    FOR XML PATH(''), TYPE).value('.','NVARCHAR(MAX)'),1,1,' ') Empleados , STUFF((SELECT ', ' + CAST(boo_hours AS VARCHAR(100)) [text()]       
    FROM R5BOOKEDHOURS 
    WHERE boo_event = t.boo_event
    FOR XML PATH(''), TYPE).value('.','NVARCHAR(MAX)'),1,1,' ') Horas
    FROM R5BOOKEDHOURS t
    GROUP BY boo_event

它在 SQL Server Studio 上完美运行,但是当我尝试在 COGNOS Reporting Studio 上使用它时,出现此错误:

-- 在此查询中使用 Blob 列要求查询主题必须具有键或唯一索引--

我不确定这是否只是该工具的错误,或者我们可以通过稍微更改代码来解决。

NVARCHAR(MAX)改为NVARCHAR(4000):

SELECT  boo_event 'Orden de Trabajo' ,STUFF((SELECT ', ' + CAST(boo_person AS VARCHAR(100)) [text()]    
FROM R5BOOKEDHOURS 
WHERE boo_event = t.boo_event
FOR XML PATH(''), TYPE).value('.','NVARCHAR(4000)'),1,1,' ') Empleados , STUFF((SELECT ', ' + CAST(boo_hours AS VARCHAR(100)) [text()]       
FROM R5BOOKEDHOURS 
WHERE boo_event = t.boo_event
FOR XML PATH(''), TYPE).value('.','NVARCHAR(4000)'),1,1,' ') Horas
FROM R5BOOKEDHOURS t
GROUP BY boo_event;