Returns a COUNT of the query by wrapping the query and performing a COUNT
        aggregate of the specified field

        :param field: the field to pass to the COUNT aggregate. Defaults to '*'
        :type field: str

        :return: The number of rows that the query will return
        :rtype: int

def count(self, field='*'):
        """
        Returns a COUNT of the query by wrapping the query and performing a COUNT
        aggregate of the specified field

        :param field: the field to pass to the COUNT aggregate. Defaults to '*'
        :type field: str

        :return: The number of rows that the query will return
        :rtype: int
        """
        rows = self.get_count_query().select(bypass_safe_limit=True)
        return list(rows[0].values())[0]