0

私はこの構造のテーブルを持っています

ID    Word         description
-------------------------------
1     book       a lot of paper
2     book       a thing
3     book       an amazing thing
4     tv         television

このテーブルを次のように変換したい:

ID    Word         description
-------------------------------
1     book       a lot of paper,a thing,an amazing thing
2     tv         television

ご了承ください :

・複製数は最大6体まで

-重複行のないテーブルが必要です。すべての重複行を、すべての説明値を含む 1 つの行にマージしたいと考えています。

助けてくれてありがとう...

4

2 に答える 2

3

これを試すことができます:

SELECT
    ROW_NUMBER() OVER(ORDER BY (SELECT NULL)) AS Id,
    *
FROM (
    SELECT DISTINCT Word,
        STUFF((SELECT ',' + description
               FROM Your_Table
               WHERE Word = T.Word
               FOR XML PATH('')), 1, 1, '') AS description
    FROM Your_Table T) AS A
于 2015-11-20T02:37:50.453 に答える
0

クエリでは、単語でグループ化し、説明で連結する必要があります

これをmysqlでテストしましたが、sqlサーバーで機能するかどうかはわかりません

SELECT id, GROUP_CONCAT(description SEPARATOR ', ')
FROM tablename GROUP BY word

mssqlサーバーの場合、@mdahlmanが提供する回答を試してください

https://stackoverflow.com/a/106334/3664960

于 2015-11-20T02:30:13.167 に答える