2014-12-25 67 views
-1

來連接第一n行的字符串字段中組我有一個表如下:T-SQL如何通過語句

FileHash    FilePath 
1      A.txt 
3      e.txt 
3      f.txt 
3      g.txt 
3      h.txt 
2      B.txt 
2      c.txt 

在T-SQL中,如何連接每個FileHash的第一3文件路徑如下:

FileHash    FilePath 
1      A.txt 
2      B.txt, C.txt 
3      e.txt, f.txt, g.txt 
+1

問一個問題之前做一些研究:) –

回答

1

一種方法:

WITH files 
    AS (SELECT DISTINCT FileHash 
     FROM dbo.test) 
SELECT FileHash, 
     Stuff((SELECT ', ' + FilePath 
       FROM dbo.Test AS fp 
       WHERE fp.FileHash = files.FileHash 
       FOR XML PATH('')), 1, 2, '') AS FilePath 
FROM files; 
+0

問題被標記爲**重複**後,您是如何回答的?我沒有看到任何回答選項或回答文本框 –

+0

可能是一個併發錯誤。我應該補充說,引用的線程是5歲,並受到保護。它不包含使用CTE和相關子查詢的技術,這在這裏最合適。 –

+0

我沒有說任何關於答案的錯誤:)想知道你問題之後如何回答被標記爲重複。 –