diff options
Diffstat (limited to 'lib/sqlalchemy/sql/functions.py')
-rw-r--r-- | lib/sqlalchemy/sql/functions.py | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/lib/sqlalchemy/sql/functions.py b/lib/sqlalchemy/sql/functions.py index 900bc6dba..5729f81f5 100644 --- a/lib/sqlalchemy/sql/functions.py +++ b/lib/sqlalchemy/sql/functions.py @@ -297,12 +297,23 @@ class FunctionElement(Executable, ColumnElement, FromClause, Generative): SQL function expressions. """ # noqa E501 + + return ColumnCollection( + columns=[(col.key, col) for col in self._all_selected_columns] + ) + + @property + def _all_selected_columns(self): if self.type._is_table_value: cols = self.type._elements else: cols = [self.label(None)] - return ColumnCollection(columns=[(col.key, col) for col in cols]) + return cols + + @property + def exported_columns(self): + return self.columns @HasMemoized.memoized_attribute def clauses(self): |