First, upvote the more detailed answer.
If your answer is accepted, you can comment on the question to alert the OP that you believe there's an answer which probably helps them more, and that they should change the acceptance. Even if the OP doesn't do this, that comment is left pointing later readers to the other answer.
I don't believe there needs to be a single all-encompassing answer for every question. This is part of the point of Stack Exchange: multiple answers represent multiple viewpoints or possibilities. (As this answer varies from the previous answer, for example.)
With this in mind, I'd generally rather let the other answer stand on its own rather than edit mine — though, of course, if it points out how my answer is wrong, I'll correct or delete my post. However, particularly for questions that have 5-6 or more answers, I'll certainly add a comment or edit my answer to point out the other answer.