-1

私はこれを少しの間理解しようとしてきましたが、行き止まりにぶつかり続けています。多分ここの誰かが私を助けることができます。私は会社で働いており、修理するユニットのファイルを受け取る予定です。場合によっては、複数のユニットが含まれる 1 つの修理請求を受け取ることがあります。シリアル番号をインポートするためのフィールドは 1 つしかなく、特定の請求に対していくつの行があるかを結合する必要があります。

たとえば、取得するファイルは次のようになります。

ClaimNumber       SerialNumber
555                12345
555                123456
555                1234567
556                4321
557                3421
558                9876
558                98765

したがって、シリアル番号を組み合わせてこのテーブルを次のような 1 つのフィールドにエクスポートする必要があります。

ClaimNumner       SerialNumber
555                12345, 123456, 1234567
556                4321
557                3421
558                9876, 98765

この形式のファイルを受け取るには制限があるため、これで作業する必要があります。ファイルには他にもフィールドがありますが、これらは私が見るべきものだと思います。誰かアイデアがあれば教えてください。ありがとう!!

4

1 に答える 1

1

あなたのテーブルがClaimという名前であることを考えると、これでうまくいくはずです(テストされていません)

Select Main.ClaimNumber,
   Left(Main.Serials,Len(Main.Serials)-1) As "Serials" From(Select distinct T2.ClaimNumber, 
       (Select T1.SerialNumber + ',' AS [text()]
        From Claim T1
        Where T1.ClaimNumber = T2.ClaimNumber
        ORDER BY T1.ClaimNumber
        For XML PATH ('')) [Serials]
 From Claim T2) [Main]
于 2013-10-10T14:15:04.053 に答える