class TableValuedAlias(LateralFromClause, Alias): (source)
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 :meth:`_functions.FunctionElement.table_valued` method, e.g.: .. sourcecode:: pycon+sql >>> from sqlalchemy import select, func >>> fn = func.json_array_elements_text('["one", "two", "three"]').table_valued("value") >>> print(select(fn.c.value)) {printsql}SELECT anon_1.value FROM json_array_elements_text(:json_array_elements_text_1) AS anon_1 .. versionadded:: 1.4.0b2 .. seealso:: :ref:`tutorial_functions_table_valued` - in the :ref:`unified_tutorial`
Method | alias |
Return a new alias of this :class:`_sql.TableValuedAlias`. |
Method | column |
Return a column expression representing this :class:`_sql.TableValuedAlias`. |
Method | lateral |
Return a new :class:`_sql.TableValuedAlias` with the lateral flag set, so that it renders as LATERAL. |
Method | render |
Apply "render derived" to this :class:`_sql.TableValuedAlias`. |
Class Variable | __visit |
Undocumented |
Instance Variable | joins |
Undocumented |
Method | _init |
Undocumented |
Class Variable | _render |
Undocumented |
Class Variable | _render |
Undocumented |
Class Variable | _supports |
Undocumented |
Class Variable | _traverse |
Undocumented |
Instance Variable | _tableval |
Undocumented |
Inherited from Alias
(via LateralFromClause
):
Class Variable | element |
Undocumented |
Class Variable | inherit |
Indicate if this :class:`.HasCacheKey` instance should make use of the cache key generation scheme used by its immediate superclass. |
Class Method | _factory |
Undocumented |
Inherited from DMLTableRole
(via LateralFromClause
, Alias
):
Class Variable | __slots__ |
Undocumented |
Class Variable | _role |
Undocumented |
Inherited from AliasedReturnsRows
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
):
Method | is |
Return ``True`` if this :class:`_expression.FromClause` is 'derived' from the given ``FromClause``. |
Instance Variable | name |
Undocumented |
Property | description |
A brief description of this :class:`_expression.FromClause`. |
Property | implicit |
Undocumented |
Property | original |
Legacy for dialects that are referring to Alias.original. |
Class Method | _construct |
Undocumented |
Method | _copy |
Reassign internal elements to be clones of themselves. |
Method | _populate |
Called on subclasses to establish the .c collection. |
Method | _refresh |
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 |
Undocumented |
Instance Variable | _orig |
Undocumented |
Property | _from |
Undocumented |
Inherited from NoInit
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
):
Method | __init__ |
Undocumented |
Inherited from NamedFromClause
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
, NoInit
):
Method | table |
Return a :class:`_sql.TableValuedColumn` object for this :class:`_expression.FromClause`. |
Class Variable | named |
Undocumented |
Inherited from FromClause
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
, NoInit
, NamedFromClause
):
Method | join |
Return a :class:`_expression.Join` from this :class:`_expression.FromClause` to another :class:`FromClause`. |
Method | outerjoin |
Return a :class:`_expression.Join` from this :class:`_expression.FromClause` to another :class:`FromClause`, with the "isouter" flag set to True. |
Method | select |
Return a SELECT of this :class:`_expression.FromClause`. |
Method | self |
Apply a 'grouping' to this :class:`_expression.ClauseElement`. |
Method | tablesample |
Return a TABLESAMPLE alias of this :class:`_expression.FromClause`. |
Class Variable | is |
Undocumented |
Class Variable | schema |
Define the 'schema' attribute for this :class:`_expression.FromClause`. |
Instance Variable | foreign |
Return the collection of :class:`_schema.ForeignKey` marker objects which this FromClause references. |
Instance Variable | primary |
Return the iterable collection of :class:`_schema.Column` objects which comprise the primary key of this :class:`_selectable.FromClause`. |
Property | c |
A synonym for :attr:`.FromClause.columns` |
Property | columns |
A named-based collection of :class:`_expression.ColumnElement` objects maintained by this :class:`_expression.FromClause`. |
Property | entity |
Return a namespace used for name-based access in SQL expressions. |
Property | exported |
A :class:`_expression.ColumnCollection` that represents the "exported" columns of this :class:`_expression.Selectable`. |
Method | _anonymous |
Undocumented |
Method | _generate |
Populate columns into an :class:`.AliasedReturnsRows` object. |
Method | _init |
Undocumented |
Method | _is |
Return ``True`` if this :class:`_expression.FromClause` and the other represent the same lexical identity. |
Method | _reset |
Reset the attributes linked to the ``FromClause.c`` attribute. |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _use |
Undocumented |
Instance Variable | _columns |
Undocumented |
Property | _cols |
Undocumented |
Property | _hide |
Undocumented |
Property | _select |
Undocumented |
Inherited from FromClauseRole
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
, NoInit
, NamedFromClause
, FromClause
, AnonymizedFromClauseRole
, StrictFromClauseRole
):
Class Variable | _is |
Undocumented |
Inherited from AllowsLambdaRole
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
, NoInit
, NamedFromClause
, FromClause
, AnonymizedFromClauseRole
, StrictFromClauseRole
, FromClauseRole
, ColumnsClauseRole
, JoinTargetRole
):
Class Variable | allows |
Undocumented |
Inherited from UsesInspection
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
, NoInit
, NamedFromClause
, FromClause
, AnonymizedFromClauseRole
, StrictFromClauseRole
, FromClauseRole
, ColumnsClauseRole
, JoinTargetRole
, AllowsLambdaRole
):
Class Variable | uses |
Undocumented |
Class Variable | _post |
Undocumented |
Inherited from Selectable
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
, NoInit
, NamedFromClause
, FromClause
, AnonymizedFromClauseRole
, StrictFromClauseRole
, FromClauseRole
, ColumnsClauseRole
, JoinTargetRole
, AllowsLambdaRole
, UsesInspection
, ColumnListRole
, StructuralRole
):
Method | corresponding |
Given a :class:`_expression.ColumnElement`, return the exported :class:`_expression.ColumnElement` object from the :attr:`_expression.Selectable.exported_columns` collection of this :class:`_expression... |
Method | replace |
Replace all occurrences of :class:`_expression.FromClause` 'old' with the given :class:`_expression.Alias` object, returning a copy of this :class:`_expression.FromClause`. |
Inherited from ReturnsRows
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
, NoInit
, NamedFromClause
, FromClause
, AnonymizedFromClauseRole
, StrictFromClauseRole
, FromClauseRole
, ColumnsClauseRole
, JoinTargetRole
, AllowsLambdaRole
, UsesInspection
, ColumnListRole
, StructuralRole
, Selectable
):
Property | selectable |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Property | _all |
A sequence of column expression objects that represents the "selected" columns of this :class:`_expression.ReturnsRows`. |
Inherited from DQLDMLClauseElement
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
, NoInit
, NamedFromClause
, FromClause
, AnonymizedFromClauseRole
, StrictFromClauseRole
, FromClauseRole
, ColumnsClauseRole
, JoinTargetRole
, AllowsLambdaRole
, UsesInspection
, ColumnListRole
, StructuralRole
, Selectable
, ReturnsRows
, ReturnsRowsRole
, SQLRole
):
Method | compile |
Compile this SQL expression. |
Method | _compiler |
Return a compiler appropriate for this ClauseElement, given a Dialect. |
Inherited from ClauseElement
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
, NoInit
, NamedFromClause
, FromClause
, AnonymizedFromClauseRole
, StrictFromClauseRole
, FromClauseRole
, ColumnsClauseRole
, JoinTargetRole
, AllowsLambdaRole
, UsesInspection
, ColumnListRole
, StructuralRole
, Selectable
, ReturnsRows
, ReturnsRowsRole
, SQLRole
, DQLDMLClauseElement
):
Method | __bool__ |
Undocumented |
Method | __getstate__ |
Undocumented |
Method | __invert__ |
Undocumented |
Method | __repr__ |
Undocumented |
Method | compare |
Compare this :class:`_expression.ClauseElement` to the given :class:`_expression.ClauseElement`. |
Method | get |
Return immediate child :class:`.visitors.HasTraverseInternals` elements of this :class:`.visitors.HasTraverseInternals`. |
Method | params |
Return a copy with :func:`_expression.bindparam` elements replaced. |
Method | unique |
Return a copy with :func:`_expression.bindparam` elements replaced. |
Class Variable | is |
Undocumented |
Class Variable | is |
Undocumented |
Class Variable | negation |
Undocumented |
Method | _clone |
Create a shallow copy of this ClauseElement. |
Method | _cloned |
Return the set consisting all cloned ancestors of this ClauseElement. |
Method | _compile |
Undocumented |
Method | _execute |
Undocumented |
Method | _execute |
an additional hook for subclasses to provide a different implementation for connection.scalar() vs. connection.execute(). |
Method | _negate |
Undocumented |
Method | _negate |
a hook to allow the right side of a binary expression to respond to a negation of the binary expression. |
Method | _replace |
Undocumented |
Method | _set |
Undocumented |
Method | _ungroup |
Return this :class:`_expression.ClauseElement` without any groupings. |
Method | _with |
in the context of binary expression, convert the type of this object to the one given. |
Class Variable | _cache |
Undocumented |
Class Variable | _gen |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Class Variable | _is |
Undocumented |
Instance Variable | _propagate |
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. |
Property | _order |
Undocumented |
Inherited from SupportsWrappingAnnotations
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
, NoInit
, NamedFromClause
, FromClause
, AnonymizedFromClauseRole
, StrictFromClauseRole
, FromClauseRole
, ColumnsClauseRole
, JoinTargetRole
, AllowsLambdaRole
, UsesInspection
, ColumnListRole
, StructuralRole
, Selectable
, ReturnsRows
, ReturnsRowsRole
, SQLRole
, DQLDMLClauseElement
, ClauseElement
):
Method | _annotate |
return a copy of this ClauseElement with annotations updated by the given dictionary. |
Method | _deannotate |
return a copy of this :class:`_expression.ClauseElement` with annotations removed. |
Method | _with |
return a copy of this ClauseElement with annotations replaced by the given dictionary. |
Inherited from SupportsAnnotations
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
, NoInit
, NamedFromClause
, FromClause
, AnonymizedFromClauseRole
, StrictFromClauseRole
, FromClauseRole
, ColumnsClauseRole
, JoinTargetRole
, AllowsLambdaRole
, UsesInspection
, ColumnListRole
, StructuralRole
, Selectable
, ReturnsRows
, ReturnsRowsRole
, SQLRole
, DQLDMLClauseElement
, ClauseElement
, SupportsWrappingAnnotations
):
Class Variable | proxy |
Undocumented |
Method | _gen |
Undocumented |
Property | _annotations |
Undocumented |
Inherited from MemoizedHasCacheKey
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
, NoInit
, NamedFromClause
, FromClause
, AnonymizedFromClauseRole
, StrictFromClauseRole
, FromClauseRole
, ColumnsClauseRole
, JoinTargetRole
, AllowsLambdaRole
, UsesInspection
, ColumnListRole
, StructuralRole
, Selectable
, ReturnsRows
, ReturnsRowsRole
, SQLRole
, DQLDMLClauseElement
, ClauseElement
, SupportsWrappingAnnotations
, SupportsAnnotations
):
Method | _generate |
return a cache key. |
Inherited from HasCacheKey
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
, NoInit
, NamedFromClause
, FromClause
, AnonymizedFromClauseRole
, StrictFromClauseRole
, FromClauseRole
, ColumnsClauseRole
, JoinTargetRole
, AllowsLambdaRole
, UsesInspection
, ColumnListRole
, StructuralRole
, Selectable
, ReturnsRows
, ReturnsRowsRole
, SQLRole
, DQLDMLClauseElement
, ClauseElement
, SupportsWrappingAnnotations
, SupportsAnnotations
, MemoizedHasCacheKey
):
Class Method | _generate |
generate cache key dispatcher for a new class. |
Class Method | _generate |
Undocumented |
Method | _gen |
return an optional cache key. |
Class Variable | _generated |
Undocumented |
Class Variable | _hierarchy |
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 |
Undocumented |
Inherited from CompilerElement
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
, NoInit
, NamedFromClause
, FromClause
, AnonymizedFromClauseRole
, StrictFromClauseRole
, FromClauseRole
, ColumnsClauseRole
, JoinTargetRole
, AllowsLambdaRole
, UsesInspection
, ColumnListRole
, StructuralRole
, Selectable
, ReturnsRows
, ReturnsRowsRole
, SQLRole
, DQLDMLClauseElement
, ClauseElement
, SupportsWrappingAnnotations
, SupportsAnnotations
, MemoizedHasCacheKey
, HasCacheKey
, HasCopyInternals
, ExternallyTraversible
, HasTraverseInternals
):
Method | __str__ |
Undocumented |
Class Variable | stringify |
Undocumented |
Class Variable | supports |
Undocumented |
Inherited from Visitable
(via LateralFromClause
, Alias
, DMLTableRole
, FromClauseAlias
, AliasedReturnsRows
, NoInit
, NamedFromClause
, FromClause
, AnonymizedFromClauseRole
, StrictFromClauseRole
, FromClauseRole
, ColumnsClauseRole
, JoinTargetRole
, AllowsLambdaRole
, UsesInspection
, ColumnListRole
, StructuralRole
, Selectable
, ReturnsRows
, ReturnsRowsRole
, SQLRole
, DQLDMLClauseElement
, ClauseElement
, SupportsWrappingAnnotations
, SupportsAnnotations
, MemoizedHasCacheKey
, HasCacheKey
, HasCopyInternals
, ExternallyTraversible
, HasTraverseInternals
, CompilerElement
):
Method | __class |
Undocumented |
Method | __init |
Undocumented |
Class Method | _generate |
Undocumented |
Method | _compiler |
Undocumented |
Class Variable | _original |
Undocumented |
Return a new alias of this :class:`_sql.TableValuedAlias`. This creates a distinct FROM object that will be distinguished from the original one when used in a SQL statement.
Return a column expression representing this :class:`_sql.TableValuedAlias`. This accessor is used to implement the :meth:`_functions.FunctionElement.column_valued` method. See that method for further details. E.g.: .. sourcecode:: pycon+sql >>> print(select(func.some_func().table_valued("value").column)) {printsql}SELECT anon_1 FROM some_func() AS anon_1 .. seealso:: :meth:`_functions.FunctionElement.column_valued`
Return a new :class:`_sql.TableValuedAlias` with the lateral flag set, so that it renders as LATERAL. .. seealso:: :func:`_expression.lateral`
Optional[ str]
= None, with_types: bool
= False) -> TableValuedAlias
:
(source)
¶
Apply "render derived" to this :class:`_sql.TableValuedAlias`. This has the effect of the individual column names listed out after the alias name in the "AS" sequence, e.g.: .. sourcecode:: pycon+sql >>> print( ... select( ... func.unnest(array(["one", "two", "three"])). table_valued("x", with_ordinality="o").render_derived() ... ) ... ) {printsql}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): .. sourcecode:: pycon+sql >>> 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) ... ) ... ) {printsql}SELECT anon_1.a, anon_1.b FROM json_to_recordset(:json_to_recordset_1) AS anon_1(a INTEGER, b VARCHAR) :param name: optional string name that will be applied to the alias generated. If left as None, a unique anonymizing name will be used. :param with_types: if 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.
Any
, *, name: Optional[ str]
= None, table_value_type: Optional[ TableValueType]
= None, joins_implicitly: bool
= False):
(source)
¶
Undocumented