That is perfectly normal behaviour - joins bring together all rows that match the conditions, even if it means values from the other table(s) are repeated.

Presumably it returns the rows as you want if you leave out the AdditionalComments table (and AnswerText2, which you don't need anyway).

If that is the case, you need to decide which row to get from AdditionalComments when there are multiple to choose from (eg: do you want "ok ok" or "yes"? ..and why did you choose that one rather than the other?)