Which answer should accept ?
You should accept an answer which is more helpful to you. If other answers are equally good and you are not sure which answer should accept, then what I do in such case is, look at the timestamps of those answer and accept the very first answer in that race.
These are some suggestions and not rules. Listen to your mind and act accordingly.
What should I do if answer is not complete ?
You can ask to the answerer whose answer you wanted to accept to edit his answer and put that "additional part", with that, you think the answer will be completed.
If he/she is not doing that, then you can answer your own question with that additional part and also put a hint about the good answer you thought initially to accept in your own answer. Then accept your answer. But you should do this only if the first suggestion is not worked out for you.
If you still feel bad about other equally good answers
You can upvote that answer to show your respect and gratitude :)
If that didn't console you, then you can put a comment on the accepted answer that indicates there are other interesting answers to look into. This will eventually make other people notice about those equally good answers and there is higher chance to get upvote on those answers too.
These are suggestions. I wish you can take a good decision based on this.