I get frustrated time and again by the fact that join variables need to have identical names in both datasets for Stata to perform the join, so finally I decided to ask.

In SQL, names don't matter as long as I specify, which variables to match on e.g. "SELECT * FROM a, b WHERE a.v1 = b.v2"
Why can't it work in similar fashion in Stata? I'd appreciate any explanations that could soothe my pain over this issue.