sqlalchemy query

方法 参数 返回 描述
all() list 返回所有查询的对象,list列表里是查询的对象地址
count() 使用from sqlalchemy import func来代替
filter(*criterion) User.name==’wang’, User.id>3
first() 单个查询对象或者None 返回第一个查询到的结果
get(ident) int 或者 元组,5或(5,10) 返回一行数据
group_by(*criterion) 列名,User.name
“having(criterion)”
join(*props, **kwargs)
limit(limit) 限制查询结果
offset(offset) 设置偏移量
one()
one_or_none()
order_by(*criterion)

all() 返回列表
first() 返回列表中的第一个对象
one() 如果返回多个结果或者没有返回都会报错
one_or_none() 如果返回多个结果报错,返回无结果为None
scalar() 返回一个值,就直接为常量

class sqlalchemy.orm.query.Query(entities, session=None)

初始化query对象

Query对象是由Session的query()方法得来的

q = session.query(User, Address) # 返回包含两个对象的列表
q = session.query(User.id, User.name) # 返回包含元组的列表
q = session.query(User, Address)
from sqlalchemy import func

# count User records, without
# using a subquery.
session.query(func.count(User.id))

# return count of user "id" grouped
# by "name"
session.query(func.count(User.id)).\
        group_by(User.name)

from sqlalchemy import distinct

# count distinct "name" values
session.query(func.count(distinct(User.name)))

参考文献:
http://docs.sqlalchemy.org/en/latest/orm/query.html#sqlalchemy.orm.query.Query
https://www.pythoncentral.io/introductory-tutorial-python-sqlalchemy/

你可能感兴趣的:(SQL)