查詢操作
查詢子句使用session
的.query()
方法來獲取query
查詢物件。查詢物件能夠使用一些方法來對應一些查詢子句,比如.order_by()
,.limit()
,.filter()
等。
查詢物件有這麼幾種方法.one()
,.all()
,.scalar()
,.one_or_none()
,.get()
,以及.first()
等。
下面對這幾個方法的用法及效果做簡單解釋。
#查詢所有的user物件
session.query(user).all()
#查詢按照主鍵公升序排序後的第乙個user物件
session.query(user).order_by(user.id.asc()).first()
#查詢指定user_id為主鍵的物件
session.query(user).get(user_id)
session.query(user).filter(user.id ==user_id).scalar()
session.query(user).filter(user.id ==user_id).one_or_none()
session.query(user).filter(user.id == user_id).one() #
如果查詢不到會丟擲異常,前面三個查詢不到只是返回none
參考:1、筆記/
SQLAlchemy複雜查詢
最近個人用python flask搞了乙個小專案,orm用到的是sqlalchemy。sqlalchemy的查詢方式非常靈活,你所能想像到的複雜sql 語句,基本上都可以實現。這裡簡單的總結一下常用的查詢技巧。多條件組合,可以用and or 實現。最外層時,and 可以省略,預設用逗號分開條件。db...
sqlalchemy基本操作
sqlalchemy的簡單實用 其他比較好的人寫的 各種基本操作 sqlalchemy指南 常用技巧 usr bin env python coding utf 8 from sqlalchemy import column,string,create engine,metadata from sq...
sqlAlchemy例項操作
from sqlalchemy import create engine from sqlalchemy.ext.declarative import declarative base from sqlalchemy import column,string,integer,float from s...