Commit 4a2a433e authored by Anssi Kääriäinen's avatar Anssi Kääriäinen Committed by Carl Meyer
Browse files

Refs #24020 -- return expressions from get_group_by_cols()

parent 9c1f501d
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -503,7 +503,7 @@ class Col(ExpressionNode):
        return self.__class__(relabels.get(self.alias, self.alias), self.target, self.output_field)

    def get_group_by_cols(self):
        return [(self.alias, self.target.column)]
        return [self]


class Ref(ExpressionNode):
@@ -529,7 +529,7 @@ class Ref(ExpressionNode):
        return "%s" % compiler.quote_name_unless_alias(self.refs), []

    def get_group_by_cols(self):
        return [(None, self.refs)]
        return [self]


class Date(ExpressionNode):
+3 −2
Original line number Diff line number Diff line
@@ -583,10 +583,11 @@ class SQLCompiler(object):
            for annotation in self.query.annotation_select.values():
                cols = annotation.get_group_by_cols()
                for col in cols:
                    sql = '%s.%s' % (qn(col[0]), qn(col[1]))
                    if sql not in seen:
                    sql, col_params = self.compile(col)
                    if sql not in seen or col_params:
                        result.append(sql)
                        seen.add(sql)
                        params.extend(col_params)

        return result, params