:tags: typing, sql
:tickets: 9656
- Added type ``ColumnExpressionArgument`` as a public alias of an internal
- type. This type is useful since it's what' accepted by the sqlalchemy in
- many api calls, such as :meth:`_sql.Select.where`, :meth:`_sql.and` and
- many other.
+ Added type :data:`_sql.ColumnExpressionArgument` as a public-facing type
+ that indicates column-oriented arguments which are passed to SQLAlchemy
+ constructs, such as :meth:`_sql.Select.where`, :func:`_sql.and_` and
+ others. This may be used to add typing to end-user functions which call
+ these methods.
.. autoclass:: sqlalchemy.engine.AdaptedConnection
:members:
-.. autoattribute:: sqlalchemy.sql.ColumnExpressionArgument
- :members:
.. autoclass:: ColumnCollection
:members:
-
.. autoclass:: ColumnElement
:members:
:inherited-members:
:undoc-members:
+.. data:: ColumnExpressionArgument
+
+ General purpose "column expression" argument.
+
+ .. versionadded:: 2.0.13
+
+ This type is used for "column" kinds of expressions that typically represent
+ a single SQL column expression, including :class:`_sql.ColumnElement`, as
+ well as ORM-mapped attributes that will have a ``__clause_element__()``
+ method.
+
+
.. autoclass:: ColumnOperators
:members:
:special-members:
.. autoclass:: BFILE
:members: __init__
+.. autoclass:: BINARY_DOUBLE
+ :members: __init__
+
+.. autoclass:: BINARY_FLOAT
+ :members: __init__
+
.. autoclass:: DATE
:members: __init__
.. autoclass:: NCLOB
:members: __init__
+.. autoclass:: NVARCHAR2
+ :members: __init__
+
.. autoclass:: NUMBER
:members: __init__
.. autoclass:: RAW
:members: __init__
+.. autoclass:: ROWID
+ :members: __init__
+
.. autoclass:: TIMESTAMP
:members: __init__
way a table or ORM entity does.
This includes ColumnElement, or ORM-mapped attributes that will have a
-`__clause_element__()` method, it also has the ExpressionElementRole
+``__clause_element__()`` method, it also has the ExpressionElementRole
overall which brings in the TextClause object also.
+
+.. versionadded:: 2.0.13
+
"""
_ColumnExpressionOrLiteralArgument = Union[Any, _ColumnExpressionArgument[_T]]
from ._selectable_constructors import union as union
from ._selectable_constructors import union_all as union_all
from ._selectable_constructors import values as values
+from ._typing import ColumnExpressionArgument as ColumnExpressionArgument
from .base import _from_objects as _from_objects
from .base import _select_iterables as _select_iterables
from .base import ColumnCollection as ColumnCollection