The query data source webpart indeed only allows you to choose "Page type" and "Custom table".
However, this does not limit you from retrieving data from any table you like.
For example, add a query data source webpart to a page.
For the "Query name" field, click "New".
For "class type", select "Custom table".
For "custom table", select "Sample table".
You can then enter a query name (such as
MyUsersQuery), and your query text could retrieve data from the
SELECT UserName FROM CMS_User
The full codename of your query would then be
It then comes down to organising your queries correctly - make sure you store them in an organised fashion, maybe by creating a "container only" page type named "System table queries".