summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/sql/functions.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2021-09-20 15:16:56 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2021-09-20 15:18:39 -0400
commit3995db5b5ec550b8208efe34df35649c131fde45 (patch)
tree6ab26d62c5703a5edb60dcf49378c72a38e08cae /lib/sqlalchemy/sql/functions.py
parent8a10b1e4506c27773628fff1f3d99ca850211862 (diff)
downloadsqlalchemy-3995db5b5ec550b8208efe34df35649c131fde45.tar.gz
implement _all_selected_columns for functionelement
Implemented a method in ``FunctionElement`` that is essentially abstract in an ancestor class (even though not used), leading to pylint complaints. Fixes: #7052 Change-Id: Iceeeb332fbb3c7187cd2b1969e2f4233a47136b1
Diffstat (limited to 'lib/sqlalchemy/sql/functions.py')
-rw-r--r--lib/sqlalchemy/sql/functions.py13
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):