1

Visual Studio 2008 で SQL Server CE を使用して、次のようにデータベースにクエリを実行しようとしました。

select          
   [INTESTAZIONE Ente], 
   [INTESTAZIONE Tipo],
   [INTESTAZIONE Anno], 
   [INTESTAZIONE Protocollo], 
   COUNT([Mittenti Mittente]) AS [N.MITTENTI],
   [Mittenti Mittente] AS [MITTENTI],
   STUFF(
           (SELECT ',' + [Mittenti Mittente] AS [ELENCO MITTENTI]
            FROM ElencoMittenti
            WHERE [ElencoMittenti.[Mittenti  Mittente]] = [Elenco_Ricorsi.[Mittenti Mittente]]
            FOR XML PATH('')), 1, 1, '' ) AS [RISULTATO]
from    
   Elenco_Ricorsi
group by 
   [INTESTAZIONE Ente], [INTESTAZIONE Tipo],[INTESTAZIONE Anno], 
   [INTESTAZIONE Protocollo], [Mittenti Mittente]

STUFF((SELECT.....)このクエリの結果として配列を作成するコマンドが必要です。

このクエリはエラーを返します:

token in error = SELECT" であり、ネストされた 'select' に問題があります。

これは SQL Server Compact Edition でも可能であると読んだので、クエリでエラーが発生したと思います。

4

1 に答える 1

2

[tablename].[columnname]を角括弧で囲む必要があるテーブルを参照するときに、角括弧が間違った場所にある場合、動作するはずの修正版を含めました。

        SELECT  [INTESTAZIONE Ente] ,
        [INTESTAZIONE Tipo] ,
        [INTESTAZIONE Anno] ,
        [INTESTAZIONE Protocollo] ,
        COUNT([Mittenti Mittente]) AS [N.MITTENTI] ,
        [Mittenti Mittente] AS [MITTENTI] ,
        STUFF(( SELECT  ',' + [Mittenti Mittente] AS [ELENCO MITTENTI]
                FROM    ElencoMittenti
                WHERE   [ElencoMittenti].[Mittenti  Mittente] = [Elenco_Ricorsi].[Mittenti Mittente]
              FOR
                XML PATH('')
              ), 1, 1, '') AS [RISULTATO]
FROM    Elenco_Ricorsi
GROUP BY [INTESTAZIONE Ente] ,
        [INTESTAZIONE Tipo] ,
        [INTESTAZIONE Anno] ,
        [INTESTAZIONE Protocollo] ,
        [Mittenti Mittente]
于 2012-12-18T15:28:14.740 に答える