Dear All,
I tried and changed update script, it works for me, details as follows;
--Step:1 (
UPDATE #ICT_Txn_UserRegistration
SET Permitted_Region_Codes = t1.RegionID,
Permitted_Branch_Codes = t2.BranchID
FROM #ICT_Txn_UserRegistration AS u
JOIN #Mast_Employees_Transfer AS m ON u.EmpUserCode = m.EmployeeCode
JOIN #UTIL_VwBranch AS b ON CHARINDEX(CONVERT(VARCHAR, b.BranchID), m.BranchID) > 0
JOIN (SELECT DISTINCT m.EmployeeCode,
STUFF((SELECT ',' + CONVERT(VARCHAR, b.RegionID)
FROM #Mast_Employees_Transfer AS m2
JOIN #UTIL_VwBranch AS b ON CHARINDEX(CONVERT(VARCHAR, b.BranchID), m2.BranchID) > 0
WHERE m2.EmployeeCode = m.EmployeeCode
FOR XML PATH('')), 1, 1, '') AS RegionID
FROM #Mast_Employees_Transfer AS m
GROUP BY m.EmployeeCode) AS t1 ON u.EmpUserCode = t1.EmployeeCode
JOIN (SELECT DISTINCT m.EmployeeCode,
STUFF((SELECT ',' + CONVERT(VARCHAR, b.BranchID)
FROM #Mast_Employees_Transfer AS m2
JOIN #UTIL_VwBranch AS b ON CHARINDEX(CONVERT(VARCHAR, b.BranchID), m2.BranchID) > 0
WHERE m2.EmployeeCode = m.EmployeeCode
FOR XML PATH('')), 1, 1, '') AS BranchID
FROM #Mast_Employees_Transfer AS m
GROUP BY m.EmployeeCode) AS t2 ON u.EmpUserCode = t2.EmployeeCode;
After execution completion of step1, then Im execute Step2 as below, then its trimmed duplicate Permitted_Region_Codes values
--Step:2
UPDATE #ICT_Txn_UserRegistration
SET Permitted_Region_Codes=
STUFF(
(
SELECT DISTINCT ',' + UniqNum FROM
(
SELECT CAST('<d>'+replace(Permitted_Region_Codes, ',','</d><d>')+'</d>' AS XML) AS numberXml
) as t1
CROSS APPLY
(
SELECT my_Data.D.value('.','varchar(50)') as UniqNum
FROM t1.numberXml.nodes('d') as my_Data(D)
) t2
FOR XML PATH('')
), 1, 1, '')
,Permitted_Branch_Codes=
STUFF(
(
SELECT DISTINCT ',' + UniqNum FROM
(
SELECT CAST('<d>'+replace(Permitted_Branch_Codes, ',','</d><d>')+'</d>' AS XML) AS numberXml
) as t1
CROSS APPLY
(
SELECT my_Data.D.value('.','varchar(50)') as UniqNum
FROM t1.numberXml.nodes('d') as my_Data(D)
) t2
FOR XML PATH('')
), 1, 1, '')
Thanks
:)