• Thanks Sean.. here is the query I have written.

    DECLARE @Tab1 table (ID Int , PS varchar(10),NPS1 varchar(10), NPS2 varchar(10))

    INSERT INTO @Tab1

    SELECT 1, 'A', 'B', 'C'

    UNION ALL

    SELECT 2, 'D', 'E', 'F'

    UNION ALL

    SELECT 3, 'G', 'H', 'I'

    UNION ALL

    SELECT 4, 'J', 'K', 'L'

    Select * FROm @Tab1

    DECLARE @TAB2 TABLE (ID INT , SV varchar(10), Col1 varchar(10), Col2 Varchar(10))

    INSERT INTO @Tab2

    SELECT 1, 'C', 'XYZ', '123'

    UNION ALL

    SELECT 2, 'D', 'AAA', '111'

    UNION ALL

    SELECT 3, 'J', 'BBB', '222'

    Select * From @Tab2

    Select A.PS,

    CASE WHEN A.PS = B.SV THEN B.Col1 END AS PS_COl1,

    CASE WHEN A.PS = B.SV THEN B.Col2 END AS PS_COl2, A.NPS1,

    CASE WHEN A.NPS1 = B.SV THEN B.Col1 END AS NPS1_COl1,

    CASE WHEN A.NPS1 = B.SV THEN B.Col2 END AS NPS1_COl2,A.NPS2,

    CASE WHEN A.NPS2 = B.SV THEN B.Col1 END AS NPS2_COl1,

    CASE WHEN A.NPS2 = B.SV THEN B.Col2 END AS NPS2_COl2

    FROM @Tab1 A

    INNER JOIN @Tab2 B ON A.PS = B.SV OR A.NPS1 = B.SV OR A.NPS2 = B.SV