興味深い方法で非正規化する必要があるクエリがあります。
ソースは次のとおりです。
SELECT
BILL_Invoice.Invoice_Number as AccountNumber,
replace(convert(varchar(10), dbo.BILL_Invoice.Invoice_Date,101) ,'/','') as AdmitDate,
BILL_InvoiceCPT.InvoiceCPT_Code AS CPTCode,
InvoiceCPT_FeeAmount as ItemCharge
FROM
dbo.BILL_InvoiceCPT
LEFT JOIN dbo.BILL_Invoice
ON dbo.BILL_InvoiceCPT.Invoice_ID = dbo.BILL_Invoice.Invoice_ID
出力は次のようになります。
AccountNumber | AdmitDate | CPTCode | ItemCharge
38689 | 02192013 | 99213 | 110.00
38689 | 02192013 | 80053 | 0.00
38689 | 02192013 | 86361 | 0.00
38689 | 02192013 | 85025 | 0.00
38689 | 02192013 | 87536 | 0.00
38689 | 02192013 | 93000 | 25.00
私が必要なのは:
AccountNumber | AdmitDate | TotalCharges | CPTCodes | ItemCharges
38689 | 02192013 | 135.00 | 99213;80053;86361;85025;87536;93000 | 110.00;0.00;0.00;0.00;0.00;25.00
これは、サードパーティ ソフトウェア アプリケーションへの入力に必要です。この情報を正しく非正規化する方法がよくわかりません。PIVOT関数はこれを行いますか?