2016-10-25 4 views
0
ClaimNo, Diag1, Diag2, Diag3, Diag4, CPT Code 
    1  v912      97729 
    1  v912 762.3    81029 
    1  v912 762.3 333.9   15321 
    1  v912 762.3 333.9 213.0 71100 

上記の情報を1行で返すクエリを記述できますか?たとえば:複数のレコードを1つの行として返すSQL(Access)

ClaimNo, Diag1, Diag2, Diag3, Diag4, CPT Codes 
    1  v912 762.3 333.9 213.0 97729, 81029, 15321, 71100 

これは少し単純かもしれませんが、ただ一つのレコードとして、異なるCPTコードをキャプチャコードについて何:私は反対Microsoft Accessの構文を見て期待していた。この目的のために

ClaimNo, CPT Codes 
    1  97729, 81029, 15321, 71100 

Microsoft SQL Server 2012。私は多くのレコードとはるかに大きなクレーム番号を扱っています。クレームは、リストされている例よりも多かれ少なかれCPTコードを持つことができます。

組み込みのINDEXとMATCH関数を使用してExcelでこれを行うことはできますか?

ありがとうございます。

+0

SQL ServerまたはAccessを使用していますか? SQL ServerでCSV集計を行うことに関して多大な疑問がありますが、いずれか試してみましたか? –

+0

私はほとんどがアクセスを使用しています。 –

+0

[関連する行の値を1つの連結された文字列値に結合する]の可能な複製(http://stackoverflow.com/questions/13278590/combine-values-from-related-rows-into-a-single-concatenated-string-値) – Andre

答えて

0
BEGIN TRAN 
CREATE TABLE #Temp(ClaimNo VARCHAR(100),Diag1 VARCHAR(100),Diag2 VARCHAR(100),Diag3 VARCHAR(100),Diag4 VARCHAR(100),CPTCode VARCHAR(100)) 

INSERT INTO #Temp(ClaimNo ,Diag1,Diag2,Diag3,Diag4,CPTCode) 
SELECT '1','v912','','','','97729' UNION ALL 
SELECT '1','v912','762.3','','','81029' UNION ALL 
SELECT '1','v912','762.3','333.9','','15321' UNION ALL 
SELECT '1','v912','762.3','333.9','213.0','71100' 

SELECT ClaimNo , STUFF((SELECT ',' + CPTCode FROM #Temp FOR XML PATH('')),1,1,'') 
FROM #Temp 
GROUP BY ClaimNo 


ROLLBACK TRAN 
関連する問題