I want to update my table group wise, i have three cases AA,BB,CC , if group of records haveing one AA value in name column then those records NAME column should be update with AA. If group is not having AA value second priority is BB next CC. If group does not have AA,BB,CC value then remains same (no need to update) . source Table. ID Name 11 AA 11 BB 11 CC 12 CC 12 02 12 BB 13 CC 13 03 13 45 13 65 14 02 14 05 15 12
Required result table: ID NAME 11 AA 11 AA 11 AA 12 BB 12 BB 12 BB 13 CC 13 CC 13 CC 13 CC 14 02 14 05 15 12
-- STEP 1: SELECT ID,Name, CASE WHEN Name LIKE 'AA' THEN 4 WHEN Name LIKE 'BB' THEN 3 WHEN Name LIKE 'CC' THEN 2 WHEN Name LIKE 'DD' THEN 1 ELSE 0 END AS HighRank INTO #Result1 FROM dbo.satti
-- STEP 2:
UPDATE Orginal SET Orginal.Name = Tmp1.Name FROM dbo.satti Orginal INNER JOIN( SELECT A.ID,A.Name,A.HighRank FROM #Result1 A INNER JOIN( SELECT ID,MAX(HighRank) AS High from #Result1 WHERE HighRank <> 0 GROUP BY ID) Temp ON A.ID = Temp.ID AND A.HighRank = Temp.High)Tmp1 ON Orginal.ID = Tmp1.ID
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.