'Creates the SQL for this query. Returns the SQL string and list of
parameters.'

def as_sql(self, qn=None):

    if (qn is None):
        qn = self.quote_name_unless_alias
    sql = ('SELECT    %s    FROM    (%s)    subquery' % (',    '.join([aggregate.as_sql(qn, self.connection) for aggregate in self.query.aggregate_select.values()]), self.query.subquery))
    params = self.query.sub_params
    return (sql, params)
