def retrieve_data(self, dataset=None, query=None, limit=None):
    query = get_query(dataset, query)
    if (('TOP' not in query) and limit):
        limit_query = f' TOP {limit}'
        select_query_index = (query.index('SELECT') + len('SELECT'))
        query = ((query[:select_query_index] + limit_query) + query[select_query_index:])
    (data, column_names) = self._execute_query(query, get_column_names=True)
    return pd.DataFrame([tuple(row) for row in data], columns=column_names)
def retrieve_data(self, dataset=None, query=None, limit=None):
    query = get_query(dataset, query)
    if (('TOP' not in query) and limit):
        limit_query = f' TOP {limit}'
        select_query_index = (query.index('SELECT') + len('SELECT'))
        query = ((query[:select_query_index] + limit_query) + query[select_query_index:])
    (data, column_names) = self._execute_query(query, get_column_names=True)
    return pd.DataFrame([tuple(row) for row in data], columns=column_names)