1

テーブルに無期限に参加しようとしています。列は次のとおりです。

+----------+---------+         +--------+--------+--------+---+-----+-----+-----+
| ClientID |  Data   |         | Client |  Data  | Client | * | Cli |  *  | ... |
+----------+---------+         +--------+--------+--------+---+-----+-----+-----+
|  7       | *data*  |         |    7   | *data* |    8   | * |  9  |  *  |     |
|  7       | *data*  |         |    7   | *data* |    8   | * |  9  |  *  |     |
|  8       | *data*  |    ->   |    7   | *data* |    8   | * |  9  |  *  |     |
|  9       | *data*  |         |    7   | *data* |   ...  | * | ... |     |     |
|  ...     |  ...    |         |   ...  |   ...  |        | * |     |     |     |
+--------------------+         +--------+--------+--------+--+-----+------+-----+

個別のクライアントの数がわからないため、テーブルを完全に結合する必要があります。私は動的 SQL を使用しないようにしていますが、これが最も簡単な方法だと思います。どんな助けでも大歓迎です。

4

1 に答える 1

0

多分

select distinct clientid, 
stuff((select ','+DATA 'data()'
from [table] t1
where t1.clientid=t2.clientid
for xml path('')),1,1,'')
from [table] t2
于 2013-03-20T19:02:05.837 に答える