大きなデータベースがあり、このデータベースには、情報を取得するために必要な2つのテーブルがあります。私はJOINとCASE WHENの両方を使用して2つのテーブルから必要なすべてのデータを取り出しました。ここでは、出力JOINテーブルのPIVOT
からのスクリーンショットは、これは私がデータをプルするために使用するコードです:関与
SELECT [PORTMultiMax].[dbo].cardholdertable.cardid as CardID,CardHolderTable.FirstName as FirstName,CardHolderTable.LastName as LastName, CardHolderTable.InitLet as MI, CardHolderPersonalDataXrTable.PersonalDataItem as Data,
CASE WHEN PersonalDataID = '4' THEN 'SSN'
WHEN PersonalDataID = '22' THEN 'Employer'
WHEN PersonalDataID = '30' THEN 'Training Type'
WHEN PersonalDataID = '32' THEN 'Primary Sponsor'
WHEN PersonalDataID = '37' THEN 'Training Date'
ELSE NULL END AS Description
FROM [PORTMultiMax].[dbo].[CardHolderTable]
join [PORTMultiMax].[dbo].[CardHolderPersonalDataXrTable]
on cardholdertable.CardID=CardHolderPersonalDataXrTable.CardID
where PersonalDataID IN (4,22,30,32,33,37)
order by LastName
テーブルの名前は次のとおりです。CardHolderTableとCardHolderPersonalDataXrTable 私がするために必要なもの次に、データ内の重複した名前の項目を取り除きます。たとえば、「JAMES AARON」には、複数の記述子(「トレーニング日、トレーニングタイプ、雇用者、SSN」)を持つために複数の行があります。
PIVOTを使用して行データを取り出し、「SSN、Employer、etc ...」という列に入れてみたかったのですが、私の問題は、以前はPIVOTを使用したことがなく、現在のSQLクエリにPIVOTコードを適用する方法を混乱させることです。
助けてください。どうもありがとう
編集ご質問や、サンプルデータと望ましい結果を提供します。あるいは、その情報で別の質問をしてください。 –