It will probably be more efficient to PIVOT tblCommon_tblSkills.
Something like:
;WITH Skills
AS
(
SELECT Common_ID, [1],[2],[3],[4],[5],[6],[7]
FROM
(
SELECT Common_ID, Skill_ID
FROM tblCommon_tblSkills
) P
PIVOT
(
COUNT(Skill_ID)
FOR Skill_ID IN ([1],[2],[3],[4],[5],[6],[7])
) A
)
SELECT C.*
,CASE WHEN S.[1] = 1 THEN 'Yes' ELSE 'No' END AS MSOffice
,CASE WHEN S.[2] = 1 THEN 'Yes' ELSE 'No' END AS ScarePoint
,CASE WHEN S.[3] = 1 THEN 'Yes' ELSE 'No' END AS [ASP.Net]
,CASE WHEN S.[4] = 1 THEN 'Yes' ELSE 'No' END AS [C#]
,CASE WHEN S.[5] = 1 THEN 'Yes' ELSE 'No' END AS J2EE
,CASE WHEN S.[6] = 1 THEN 'Yes' ELSE 'No' END AS SQLServer
,CASE WHEN S.[7] = 1 THEN 'Yes' ELSE 'No' END AS Oracle
FROM tblCommon C
JOIN Skills S
ON C.[ID] = S.Common_ID