Yes you can do an inner join/outer join in a content provider. Like this:
String tables = "table1 LEFT OUTER JOIN table2 ON (table1.sportId = table2._id)";
queryBuilder.setTables(tables);
And don't need to make a new instance you can just pass it through in the constructor if you want. Or make from you database class an Singleton.