diff --git a/sqlmodel/sql/expression.py b/sqlmodel/sql/expression.py index 112968c65..82cf18e93 100644 --- a/sqlmodel/sql/expression.py +++ b/sqlmodel/sql/expression.py @@ -257,6 +257,7 @@ class SelectOfScalar(SelectBase[_T]): Column, # type: ignore Sequence, # type: ignore Mapping, # type: ignore + Label, # type: ignore UUID, datetime, float, @@ -275,6 +276,7 @@ class SelectOfScalar(SelectBase[_T]): Column, # type: ignore Sequence, # type: ignore Mapping, # type: ignore + Label, # type: ignore UUID, datetime, float, @@ -293,6 +295,7 @@ class SelectOfScalar(SelectBase[_T]): Column, # type: ignore Sequence, # type: ignore Mapping, # type: ignore + Label, # type: ignore UUID, datetime, float, @@ -311,6 +314,7 @@ class SelectOfScalar(SelectBase[_T]): Column, # type: ignore Sequence, # type: ignore Mapping, # type: ignore + Label, # type: ignore UUID, datetime, float, @@ -328,7 +332,7 @@ class SelectOfScalar(SelectBase[_T]): @overload -def select(__ent0: _TCCA[_T0]) -> SelectOfScalar[_T0]: +def select(__ent0: _TCCA[_T0]) -> SelectOfScalar[_T0]: # type: ignore ... @@ -337,6 +341,16 @@ def select(__ent0: _TScalar_0) -> SelectOfScalar[_TScalar_0]: # type: ignore ... +@overload +def select(*entities: _TCCA[_T0]) -> Select[Tuple[_T0, ...]]: # type: ignore + ... + + +@overload +def select(*entities: _TScalar_0) -> Select[Tuple[_TScalar_0, ...]]: # type: ignore + ... + + # Generated overloads start diff --git a/sqlmodel/sql/expression.py.jinja2 b/sqlmodel/sql/expression.py.jinja2 index 53babe1bb..21d36dd2c 100644 --- a/sqlmodel/sql/expression.py.jinja2 +++ b/sqlmodel/sql/expression.py.jinja2 @@ -256,6 +256,7 @@ _TScalar_{{ i }} = TypeVar( Column, # type: ignore Sequence, # type: ignore Mapping, # type: ignore + Label, # type: ignore UUID, datetime, float, @@ -273,7 +274,7 @@ _T{{ i }} = TypeVar("_T{{ i }}") # Generated TypeVars end @overload -def select(__ent0: _TCCA[_T0]) -> SelectOfScalar[_T0]: +def select(__ent0: _TCCA[_T0]) -> SelectOfScalar[_T0]: # type: ignore ... @@ -282,6 +283,16 @@ def select(__ent0: _TScalar_0) -> SelectOfScalar[_TScalar_0]: # type: ignore ... +@overload +def select(*entities: _TCCA[_T0]) -> Select[Tuple[_T0, ...]]: # type: ignore + ... + + +@overload +def select(*entities: _TScalar_0) -> Select[Tuple[_TScalar_0, ...]]: # type: ignore + ... + + # Generated overloads start {% for signature in signatures %}