>>DECLARE @IdList varchar(8000) >>SELECT @IdList = ISNULL(@IdList + ', ', '') + StudentId >> FROM survey >> WHERE StudentId IN ( SELECT StudentId FROM survey >> WHERE interest IN (3,45) >> GROUP BY StudentId >> HAVING COUNT(*) = 2 ) >>GROUP BY StudentId >>SELECT @IdListAs you can see, ther are two "variables" in this query: the list of interests '(3,45)' and number of values in the list - '2'.