- :ref:`orm_expression_update_delete`
+ *
+ - ::
+
+ session.query(User).count()
+
+ - ::
+
+ session.scalar(select(func.count()).select_from(User))
+ session.scalar(select(func.count(User.id)))
+
+ - :meth:`_orm.Session.scalar`
+
.. _migration_20_unify_select:
ORM Query Unified with Core Select
query = session.query(Author)
query = query.options(
joinedload(Author.book).options(
- load_only("summary", "excerpt"),
+ load_only(Book.summary, Book.excerpt),
joinedload(Book.citations).options(
joinedload(Citation.author),
defer(Citation.fulltext)
query = session.query(Author)
query = query.options(
- joinedload(Author.book).load_only("summary", "excerpt"),
+ joinedload(Author.book).load_only(Book.summary, Book.excerpt),
defaultload(Author.book).joinedload(Book.citations).joinedload(Citation.author),
defaultload(Author.book).defaultload(Book.citations).defer(Citation.fulltext)
)
from sqlalchemy.orm import load_only
- session.query(Book).options(load_only("summary", "excerpt"))
+ session.query(Book).options(load_only(Book.summary, Book.excerpt))
Wildcard and Exclusionary Options with Multiple-Entity Queries
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
query = session.query(Book, Author).join(Book.author)
query = query.options(
- Load(Book).load_only("summary", "excerpt")
+ Load(Book).load_only(Book.summary, Book.excerpt)
)
Above, :class:`_orm.Load` is used in conjunction with the exclusionary option