use a function:
CREATE FUNCTION [dbo].[fnAreas](
@candidate_id int
)
RETURNS varchar(max)
AS
BEGIN
-- returns a comma-delimited list of areas for a given candidate_id
DECLARE @Areas varchar(max)
SELECT @Areas = COALESCE(@Areas + ', ', '') +
a.area
from
area AS a
INNER JOIN candidate_area AS ca
ON a.area_id = ca.area_id
WHERE
ca.candidate_id = @candidate_id
RETURN @Areas
END