Hi Guys
I have a table as shown by 1in the picture bellow, i want to write an SQL query that will summarize it as shown in number 2. But instead the last three colums are showing duplicates while they where supose to show different activities as shown by 3, please assist me to modify the query.
The query is:
CREATE TABLE #Rabelani_DATA ( person_id uniqueidentifier default newid(), Name varchar(160), Gender varchar(160), DoB datetime, ActivityDate datetime, purchased uniqueidentifier, installed uniqueidentifier, maintainance1 uniqueidentifier, maintainance2 uniqueidentifier, maintainance3 uniqueidentifier, ) INSERT INTO #Rabelani_DATA SELECT DISTINCT person_id, Name, Gender, DoB, ActivityDateetime, Null, Null, Null, Null, Null FROM PesonActivities -- Check purchased Update #Rabelani_DATA Set #Rabelani_DATA.purchased = Table_purchased.activity_id From ( Select Table_purchased.person_id, Table_purchased.activity_id, Table_purchased.Activity From PersonActivities Table_purchased Where Table_purchased.Activity = 'purchased') As Table_purchased Where Table_purchased.person_id = #Rabelani_DATA.person_id -- Check installed Update #Rabelani_DATA Set #Rabelani_DATA.installed = Table_installed.activity_id From ( Select Table_installed.person_id, Table_installed.activity_id, Table_installed.Activity From PersonActivities Table_installed Where Table_installed.Activity = 'installed') As Table_installed Where Table_installed.person_id = #Rabelani_DATA.person_id -- Check maintainance1 Update #Rabelani_DATA Set #Rabelani_DATA.maintainance1 = Table_maintainance1.activity_id From ( Select Table_maintainance1.person_id, Table_maintainance1.activity_id, Table_maintainance1.Activity From PersonActivities Table_maintainance1 Where Table_maintainance1.Activity = 'maintainance1') As Table_maintainance1 Where Table_maintainance1.beneficiary_id = #Rabelani_DATA.beneficiary_id -- Check maintainance2 Update #Rabelani_DATA Set #Rabelani_DATA.maintainance2 = Table_maintainance2.activity_id From ( Select Table_maintainance2.person_id, Table_maintainance2.activity_id, Table_maintainance2.Activity From PersonActivities Table_maintainance2 Where Table_maintainance2.Activity = 'maintainance2') As Table_maintainance2 Where Table_maintainance2.beneficiary_id = #Rabelani_DATA.beneficiary_id -- Check maintainance3 Update #Rabelani_DATA Set #Rabelani_DATA.maintainance3 = Table_maintainance2.activity_id From ( Select Table_maintainance3.person_id, Table_maintainance3.activity_id, Table_maintainance3.Activity From PersonActivities Table_maintainance3 Where Table_maintainance3.Activity = 'maintainance3') As Table_maintainance3 Where Table_maintainance3.beneficiary_id = #Rabelani_DATA.beneficiary_id -- Result SELECT * FROM #Rabelani_DATA DROP TABLE #Rabelani_DATA
Please help
Rabelani Netshifhire