Tables and queries are interchangeable, with the one caveat that sometimes
queries are not updateable. Then the form won't be updateable, and will be
blank if there's no data.
Any form (mainform or subform) can be based on a Query; in practice, most are.
In fact, if you base a form on a Table, Access will usually create a hidden
query as its recordsource.
Note also that your statement "subforms are tables" is strictly speaking
incorrect: a Form is one kind of object, a Table is a very different kind of
object. Your subforms are *bound to* Tables, or use Tables as recordsources -
but they aren't tables, any more than my office window is the Owyhee Mountain
range!