@classmethod
def fetch_result_sets(cls, db, datasource_type):
    """Returns a list of tables [schema1.table1, schema2.table2, ...]

        Datasource_type can be 'table' or 'view'.
        Empty schema corresponds to the list of full names of the all
        tables or views: <schema>.<result_set_name>.
        """
    result_set_df = db.get_df(
        """SELECT table_schema, table_name FROM INFORMATION_SCHEMA.{}S
               ORDER BY concat(table_schema, '.', table_name)"""
        .format(datasource_type.upper()), None)
    result_sets = []
    for unused, row in result_set_df.iterrows():
        result_sets.append('{}.{}'.format(row['table_schema'], row[
            'table_name']))
    return result_sets
