'Append the given GROUP BY criterion applied to this selectable.
The criterion will be appended to any pre-existing GROUP BY criterion.
This is an **in-place** mutation method; the
:meth:`~.GenerativeSelect.group_by` method is preferred, as it provides standard
:term:`method chaining`.'

def append_group_by(self, *clauses):

    if ((len(clauses) == 1) and (clauses[0] is None)):
        self._group_by_clause = ClauseList()
    else:
        if (getattr(self, '_group_by_clause', None) is not None):
            clauses = (list(self._group_by_clause) + list(clauses))
        self._group_by_clause = ClauseList(*clauses)
