RegEx isn’t very good at this, as it’s a lot more complicated than it appears:
- What if they use LEFT/RIGHT INNER/OUTER/CROSS/MERGE/NATURAL joins instead of the a,b syntax? The a,b syntax should be avoided anyway.
- What about nested queries?
- What if there is no table (selecting a constant)
- What about line breaks and other whitespace formatting?
- Alias names?
I could go on.
What you can do is look for an sql parser, and run your query through that.