... select(
... [users_table],
... select([func.max(users_table.c.name)]).label('maxuser')==users_table.c.name)
- ... ).all()
+ ... ).all() # doctest: +NORMALIZE_WHITESPACE
SELECT users.id AS users_id, users.name AS users_name, users.fullname AS users_fullname, users.password AS users_password
FROM users
- WHERE (SELECT max(users.name)
+ WHERE (SELECT max(users.name) AS max_1
FROM users) = users.name
[]
{stop}[<User('wendy','Wendy Williams', 'foobar')>]
{python}
{sql}>>> for r in session.query(User).\
... add_column(select([func.max(users_table.c.name)]).label('maxuser')):
- ... print r
- SELECT users.id AS users_id, users.name AS users_name, users.fullname AS users_fullname, users.password AS users_password, (SELECT max(users.name)
+ ... print r # doctest: +NORMALIZE_WHITESPACE
+ SELECT users.id AS users_id, users.name AS users_name, users.fullname AS users_fullname, users.password AS users_password, (SELECT max(users.name) AS max_1
FROM users) AS maxuser
FROM users ORDER BY users.oid
[]
{python}
>>> session.delete(jack)
- {sql}>>> session.query(User).filter_by(name='jack').count()
+ {sql}>>> session.query(User).filter_by(name='jack').count() # doctest: +NORMALIZE_WHITESPACE
UPDATE addresses SET user_id=? WHERE addresses.id = ?
[None, 1]
UPDATE addresses SET user_id=? WHERE addresses.id = ?
[None, 2]
DELETE FROM users WHERE users.id = ?
[5]
- SELECT count(users.id)
+ SELECT count(users.id) AS count_1
FROM users
WHERE users.name = ?
['jack']
{python}
{sql}>>> session.query(Address).filter(
... Address.email_address.in_(['jack@google.com', 'j25@yahoo.com'])
- ... ).count()
- SELECT count(addresses.id)
+ ... ).count() # doctest: +NORMALIZE_WHITESPACE
+ SELECT count(addresses.id) AS count_1
FROM addresses
WHERE addresses.email_address IN (?, ?)
['jack@google.com', 'j25@yahoo.com']
# only one address remains
{sql}>>> session.query(Address).filter(
... Address.email_address.in_(['jack@google.com', 'j25@yahoo.com'])
- ... ).count()
+ ... ).count() # doctest: +NORMALIZE_WHITESPACE
DELETE FROM addresses WHERE addresses.id = ?
[2]
- SELECT count(addresses.id)
+ SELECT count(addresses.id) AS count_1
FROM addresses
WHERE addresses.email_address IN (?, ?)
['jack@google.com', 'j25@yahoo.com']
COMMIT
{stop}
- {sql}>>> session.query(User).filter_by(name='jack').count()
+ {sql}>>> session.query(User).filter_by(name='jack').count() # doctest: +NORMALIZE_WHITESPACE
BEGIN
- SELECT count(users.id)
+ SELECT count(users.id) AS count_1
FROM users
WHERE users.name = ?
['jack']
{sql}>>> session.query(Address).filter(
... Address.email_address.in_(['jack@google.com', 'j25@yahoo.com'])
- ... ).count()
- SELECT count(addresses.id)
+ ... ).count() # doctest: +NORMALIZE_WHITESPACE
+ SELECT count(addresses.id) AS count_1
FROM addresses
WHERE addresses.email_address IN (?, ?)
['jack@google.com', 'j25@yahoo.com']
First some new tables:
{python}
+ >>> from sqlalchemy import Text
>>> post_table = Table('posts', metadata,
... Column('id', Integer, primary_key=True),
... Column('user_id', Integer, ForeignKey('users.id')),
... Column('headline', String(255), nullable=False),
- ... Column('body', String)
+ ... Column('body', Text)
... )
>>> post_keywords = Table('post_keywords', metadata,