Your headline refers 'copy database' but your description refers table(s). Are you copying a database to another host or copying table(s) involving only one host?
If the latter is the case you can simply execute “CREATE TABLE databasename.new_table AS SELECT .. FROM databasename.old_table .. “. The SELECT can use any construct that MySQL allows in a SELECT statement (even a GROUP BY with an aggregate function) . But be aware that new_table will be created without indexes. But that would also be necessary if you should implement something similar in the GUI – simply because indexes in old_table may not make sense at all with the result set fetched by the SELECT.
If you are working across multiple connections (Is that what you are doing?) the CREATE TABLE .. SELECT .. statement will not work. It is the server that executes the statement and one server knows nothing about another server (unless you use the Federated/FederatedX storage engine: http://dev.mysql.com…age-engine.html .. and that would be an option.