class documentation

class TableValuedAlias(Alias):

View In Hierarchy

An alias against a "table valued" SQL function.

This construct provides for a SQL function that returns columns to be used in the FROM clause of a SELECT statement. The object is generated using the _functions.FunctionElement.table_valued method, e.g.:

>>> from sqlalchemy import select, func
>>> fn = func.json_array_elements_text('["one", "two", "three"]').table_valued("value")
>>> print(select(fn.c.value))
SELECT anon_1.value
FROM json_array_elements_text(:json_array_elements_text_1) AS anon_1
New in version 1.4.0b2.
Method alias Return a new alias of this _sql.TableValuedAlias.
Method lateral Return a new _sql.TableValuedAlias with the lateral flag set, so that it renders as LATERAL.
Method render​_derived Apply "render derived" to this _sql.TableValuedAlias.
Method ​_init Undocumented
Method column Return a column expression representing this _sql.TableValuedAlias.
Class Variable __visit​_name__ Undocumented
Class Variable ​_render​_derived Undocumented
Class Variable ​_render​_derived​_w​_types Undocumented
Class Variable ​_supports​_derived​_columns Undocumented
Class Variable ​_traverse​_internals Undocumented
Instance Variable ​_tableval​_type Undocumented

Inherited from Alias:

Class Method ​_factory Return an _expression.Alias object.
Class Variable inherit​_cache Indicate if this .HasCacheKey instance should make use of the cache key generation scheme used by its immediate superclass.

Inherited from DMLTableRole (via Alias):

Class Variable ​_role​_name Undocumented

Inherited from FromClauseRole (via Alias, DMLTableRole):

Class Variable ​_is​_subquery Undocumented
Property ​_hide​_froms Undocumented

Inherited from ColumnsClauseRole (via Alias, DMLTableRole, FromClauseRole):

Property ​_select​_iterable Undocumented

Inherited from AllowsLambdaRole (via Alias, DMLTableRole, FromClauseRole, ColumnsClauseRole):

Class Variable allows​_lambda Undocumented

Inherited from UsesInspection (via Alias, DMLTableRole, FromClauseRole, ColumnsClauseRole):

Class Variable ​_post​_inspect Undocumented
Class Variable uses​_inspection Undocumented

Inherited from SQLRole (via Alias, DMLTableRole, FromClauseRole, ColumnsClauseRole, ColumnListRole):

Class Variable allows​_lambda Undocumented
Class Variable uses​_inspection Undocumented

Inherited from AllowsLambdaRole (via Alias, DMLTableRole, FromClauseRole, JoinTargetRole):

Class Variable allows​_lambda Undocumented

Inherited from UsesInspection (via Alias, DMLTableRole, FromClauseRole, JoinTargetRole):

Class Variable ​_post​_inspect Undocumented
Class Variable uses​_inspection Undocumented

Inherited from SQLRole (via Alias, DMLTableRole, FromClauseRole, JoinTargetRole, StructuralRole):

Class Variable allows​_lambda Undocumented
Class Variable uses​_inspection Undocumented

Inherited from AliasedReturnsRows (via Alias):

Method is​_derived​_from Return True if this _expression.FromClause is 'derived' from the given FromClause.
Class Method ​_construct Undocumented
Method ​_copy​_internals Reassign internal elements to be clones of themselves.
Method ​_populate​_column​_collection Called on subclasses to establish the .c collection.
Method ​_refresh​_for​_new​_column Given a column added to the .c collection of an underlying selectable, produce the local version of that column, assuming this selectable ultimately should proxy this column.
Class Variable ​_is​_from​_container Undocumented
Class Variable named​_with​_column Undocumented
Instance Variable ​_orig​_name Undocumented
Instance Variable element Undocumented
Instance Variable name Undocumented
Property ​_from​_objects Undocumented
Property bind Undocumented
Property description A brief description of this _expression.FromClause.
Property original Legacy for dialects that are referring to Alias.original.

Inherited from NoInit (via Alias, AliasedReturnsRows):

Method __init__ Undocumented

Inherited from FromClause (via Alias, AliasedReturnsRows):

Method join Return a _expression.Join from this _expression.FromClause to another FromClause.
Method outerjoin No summary
Method select Return a SELECT of this _expression.FromClause.
Method table​_valued Return a _sql.TableValuedColumn object for this _expression.FromClause.
Method tablesample Return a TABLESAMPLE alias of this _expression.FromClause.
Class Variable c Undocumented
Class Variable schema Define the 'schema' attribute for this _expression.FromClause.
Instance Variable foreign​_keys Return the collection of _schema.ForeignKey marker objects which this FromClause references.
Instance Variable primary​_key Return the iterable collection of _schema.Column objects which comprise the primary key of this _selectable.FromClause.
Method ​_anonymous​_fromclause Undocumented
Method ​_generate​_fromclause​_column​_proxies Undocumented
Method ​_init​_collections Undocumented
Method ​_is​_lexical​_equivalent Return True if this _expression.FromClause and the other represent the same lexical identity.
Method ​_reset​_column​_collection Reset the attributes linked to the FromClause.c attribute.
Class Variable ​_hide​_froms Undocumented
Class Variable ​_is​_from​_clause Undocumented
Class Variable ​_is​_join Undocumented
Class Variable ​_select​_iterable Undocumented
Class Variable ​_use​_schema​_map Undocumented
Class Variable is​_selectable Undocumented
Instance Variable ​_columns Undocumented
Property ​_cols​_populated Undocumented
Property columns A named-based collection of _expression.ColumnElement objects maintained by this _expression.FromClause.
Property entity​_namespace Return a namespace used for name-based access in SQL expressions.
Property exported​_columns A _expression.ColumnCollection that represents the "exported" columns of this _expression.Selectable.

Inherited from FromClauseRole (via Alias, AliasedReturnsRows, FromClause, AnonymizedFromClauseRole, StrictFromClauseRole):

Class Variable ​_is​_subquery Undocumented
Class Variable ​_role​_name Undocumented

Inherited from AllowsLambdaRole (via Alias, AliasedReturnsRows, FromClause, AnonymizedFromClauseRole, StrictFromClauseRole, FromClauseRole, ColumnsClauseRole):

Class Variable allows​_lambda Undocumented

Inherited from UsesInspection (via Alias, AliasedReturnsRows, FromClause, AnonymizedFromClauseRole, StrictFromClauseRole, FromClauseRole, ColumnsClauseRole):

Class Variable ​_post​_inspect Undocumented
Class Variable uses​_inspection Undocumented

Inherited from SQLRole (via Alias, AliasedReturnsRows, FromClause, AnonymizedFromClauseRole, StrictFromClauseRole, FromClauseRole, ColumnsClauseRole, ColumnListRole):

Class Variable allows​_lambda Undocumented
Class Variable uses​_inspection Undocumented

Inherited from AllowsLambdaRole (via Alias, AliasedReturnsRows, FromClause, AnonymizedFromClauseRole, StrictFromClauseRole, FromClauseRole, JoinTargetRole):

Class Variable allows​_lambda Undocumented

Inherited from UsesInspection (via Alias, AliasedReturnsRows, FromClause, AnonymizedFromClauseRole, StrictFromClauseRole, FromClauseRole, JoinTargetRole):

Class Variable ​_post​_inspect Undocumented
Class Variable uses​_inspection Undocumented

Inherited from SQLRole (via Alias, AliasedReturnsRows, FromClause, AnonymizedFromClauseRole, StrictFromClauseRole, FromClauseRole, JoinTargetRole, StructuralRole):

Class Variable allows​_lambda Undocumented
Class Variable uses​_inspection Undocumented

Inherited from Selectable (via Alias, AliasedReturnsRows, FromClause):

Method corresponding​_column No summary
Method replace​_selectable Replace all occurrences of _expression.FromClause 'old' with the given _expression.Alias object, returning a copy of this _expression.FromClause.

Inherited from ReturnsRows (via Alias, AliasedReturnsRows, FromClause, Selectable):

Class Variable ​_is​_lateral Undocumented
Class Variable ​_is​_returns​_rows Undocumented
Class Variable ​_is​_select​_statement Undocumented
Property ​_all​_selected​_columns A sequence of column expression objects that represents the "selected" columns of this _expression.ReturnsRows.
Property selectable Undocumented

Inherited from ReturnsRowsRole (via Alias, AliasedReturnsRows, FromClause, Selectable, ReturnsRows):

Class Variable ​_role​_name Undocumented

Inherited from SQLRole (via Alias, AliasedReturnsRows, FromClause, Selectable, ReturnsRows, ReturnsRowsRole):

Class Variable allows​_lambda Undocumented
Class Variable uses​_inspection Undocumented

Inherited from ClauseElement (via Alias, AliasedReturnsRows, FromClause, Selectable, ReturnsRows):

Method compare Compare this _expression.ClauseElement to the given _expression.ClauseElement.
Method compile Compile this SQL expression.
Method params Return a copy with _expression.bindparam elements replaced.
Method self​_group Apply a 'grouping' to this _expression.ClauseElement.
Method unique​_params Return a copy with _expression.bindparam elements replaced.
Method __bool__ Undocumented
Method __getstate__ Undocumented
Method __invert__ Undocumented
Method __repr__ Undocumented
Method __str__ Undocumented
Method ​_clone Create a shallow copy of this ClauseElement.
Method ​_cloned​_set Return the set consisting all cloned ancestors of this ClauseElement.
Method ​_compile​_w​_cache Undocumented
Method ​_compiler Return a compiler appropriate for this ClauseElement, given a Dialect.
Method ​_execute​_on​_connection Undocumented
Method ​_negate Undocumented
Method ​_negate​_in​_binary a hook to allow the right side of a binary expression to respond to a negation of the binary expression.
Method ​_replace​_params Undocumented
Method ​_set​_propagate​_attrs Undocumented
Method ​_ungroup Return this _expression.ClauseElement without any groupings.
Method ​_with​_binary​_element​_type in the context of binary expression, convert the type of this object to the one given.
Class Variable ​_cache​_key​_traversal Undocumented
Class Variable ​_is​_bind​_parameter Undocumented
Class Variable ​_is​_clause​_list Undocumented
Class Variable ​_is​_clone​_of Undocumented
Class Variable ​_is​_immutable Undocumented
Class Variable ​_is​_lambda​_element Undocumented
Class Variable ​_is​_select​_container Undocumented
Class Variable ​_is​_singleton​_constant Undocumented
Class Variable ​_is​_text​_clause Undocumented
Class Variable ​_is​_textual Undocumented
Class Variable ​_order​_by​_label​_element Undocumented
Class Variable is​_clause​_element Undocumented
Class Variable stringify​_dialect Undocumented
Class Variable supports​_execution Undocumented
Instance Variable ​_propagate​_attrs like annotations, however these propagate outwards liberally as SQL constructs are built, and are set up at construction time.
Property ​_constructor return the 'constructor' for this ClauseElement.

Inherited from SQLRole (via Alias, AliasedReturnsRows, FromClause, Selectable, ReturnsRows, ClauseElement):

Class Variable allows​_lambda Undocumented
Class Variable uses​_inspection Undocumented

Inherited from SupportsWrappingAnnotations (via Alias, AliasedReturnsRows, FromClause, Selectable, ReturnsRows, ClauseElement):

Method ​_annotate return a copy of this ClauseElement with annotations updated by the given dictionary.
Method ​_deannotate return a copy of this _expression.ClauseElement with annotations removed.
Method ​_with​_annotations return a copy of this ClauseElement with annotations replaced by the given dictionary.

Inherited from SupportsAnnotations (via Alias, AliasedReturnsRows, FromClause, Selectable, ReturnsRows, ClauseElement, SupportsWrappingAnnotations):

Property ​_annotations​_cache​_key Undocumented

Inherited from MemoizedHasCacheKey (via Alias, AliasedReturnsRows, FromClause, Selectable, ReturnsRows, ClauseElement):

Method ​_generate​_cache​_key return a cache key.

Inherited from HasCacheKey (via Alias, AliasedReturnsRows, FromClause, Selectable, ReturnsRows, ClauseElement, MemoizedHasCacheKey):

Class Method ​_generate​_cache​_attrs generate cache key dispatcher for a new class.
Class Method ​_generate​_cache​_key​_for​_object Undocumented
Method ​_gen​_cache​_key return an optional cache key.
Class Variable __slots__ Undocumented
Class Variable ​_hierarchy​_supports​_caching private attribute which may be set to False to prevent the inherit_cache warning from being emitted for a hierarchy of subclasses.
Class Variable ​_is​_has​_cache​_key Undocumented

Inherited from Traversible (via Alias, AliasedReturnsRows, FromClause, Selectable, ReturnsRows, ClauseElement):

Method get​_children Return immediate child .visitors.Traversible elements of this .visitors.Traversible.
Method __class​_getitem__ Undocumented
def alias(self, name=None):

Return a new alias of this _sql.TableValuedAlias.

This creates a distinct FROM object that will be distinguished from the original one when used in a SQL statement.

def lateral(self, name=None):

Return a new _sql.TableValuedAlias with the lateral flag set, so that it renders as LATERAL.

See Also

_expression.lateral

def render_derived(self, name=None, with_types=False):

Apply "render derived" to this _sql.TableValuedAlias.

This has the effect of the individual column names listed out after the alias name in the "AS" sequence, e.g.:

>>> print(
...     select(
...         func.unnest(array(["one", "two", "three"])).
            table_valued("x", with_ordinality="o").render_derived()
...     )
... )
SELECT anon_1.x, anon_1.o
FROM unnest(ARRAY[%(param_1)s, %(param_2)s, %(param_3)s]) WITH ORDINALITY AS anon_1(x, o)

The with_types keyword will render column types inline within the alias expression (this syntax currently applies to the PostgreSQL database):

>>> print(
...     select(
...         func.json_to_recordset(
...             '[{"a":1,"b":"foo"},{"a":"2","c":"bar"}]'
...         )
...         .table_valued(column("a", Integer), column("b", String))
...         .render_derived(with_types=True)
...     )
... )
SELECT anon_1.a, anon_1.b FROM json_to_recordset(:json_to_recordset_1)
AS anon_1(a INTEGER, b VARCHAR)
Parameters
nameoptional string name that will be applied to the alias generated. If left as None, a unique anonymizing name will be used.
with​_typesif True, the derived columns will include the datatype specification with each column. This is a special syntax currently known to be required by PostgreSQL for some SQL functions.
def _init(self, selectable, name=None, table_value_type=None):
@HasMemoized.memoized_attribute
def column(self):

Return a column expression representing this _sql.TableValuedAlias.

This accessor is used to implement the _functions.FunctionElement.column_valued method. See that method for further details.

E.g.:

>>> print(select(func.some_func().table_valued("value").column))
SELECT anon_1 FROM some_func() AS anon_1

See Also

_functions.FunctionElement.column_valued

__visit_name__: str =
_render_derived: bool =

Undocumented

_render_derived_w_types: bool =

Undocumented

_supports_derived_columns: bool =
_traverse_internals =
_tableval_type =

Undocumented