apropos does find all symbols in all namespaces that match the argument, but the return value gives no clue as to which namespace the found symbols are in. It can even return multiple occurrences of the same symbol, which only gives a clue that the symbol exists in more than one namespace, but not which ones. For example:
user=> (apropos "replace")
(postwalk-replace prewalk-replace replace re-quote-replacement replace replace-first)
It would be nice if the returned symbols could indicate the namespace, either always, or if the found symbol is not in the current namespace.