Any time you want to ask someone a question, you should know the answer you’re looking for.
That doesn’t mean you know the content of that answer. That’s different. What I mean is that you need to know what you’re looking for. If you ask someone “Can you help me with this,” and they respond with “sure, how can I help,” then you sound like an awful dunce if you follow it up with “uhhh… I’m not sure.”
That’s not asking a question. That’s flailing for help.
Your questions, and the answers you’re looking for, should be as narrow as possible. First, because any time you ask a question you’re really both asking a favor and asking for their attention to even listen, and those are both big asks. But also because you actually want the help to be… well, helpful.
Give the person you’re asking all, but only, the information they need to help you. Catch them up with background if necessary, but don’t add anything that isn’t directly relevant unless they ask.
Sometimes you’re asking questions for reasons other than asking for new, helpful information. Sometimes you’re asking questions as part of an evaluation. I’ve lived inside the interview process in one way or another for some time, so I’m very familiar with this style, but it applies to any kind of evaluation, from first date questions to asking about a product you’re interested in buying.
A common mistake I see all the time is asking questions because they seem good, but not having any idea what kind of answer you’re looking for. Before you ask about a car’s fuel efficiency, ask yourself – do you have any idea what kind of answer you want? How to interpret the information you get? Before you ask a dumb interview question like “what kind of tree would you be,” make sure you have a framework to actually evaluate the responses (or, you know, don’t ask dumb questions).
Questions are good – you should ask many in your life. But ask them well; it’s a skill, like any other.