【SQLAlchemy】简单整理filter和filter_by的区别
生活随笔
收集整理的這篇文章主要介紹了
【SQLAlchemy】简单整理filter和filter_by的区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
注意:本文講的是SQLAlchemy而不是Flask-SQLAlchemy,這兩者有些許不同
SQLAlchemy
SQLAlchemy中的query,有filter和filter_by兩個函數,其中:
1、filter語法:
column == expression
傳入參數的寫法,要用:類名.列名 == 值 去判斷
舉例:
query(User.name).filter(User.fullname=='Ed Jones')也可以連續使用多次filter:
result_p_codes = session.query(Spread_menu.p_codes).filter(Spread_menu.isactive == 1).filter(Spread_menu.kind == p_kind).all()且更復雜的查詢的語法,比如_and(),or_()等多個條件的查詢,只支持filter
復雜查詢舉例:
query.filter(or_(User.name == 'ed', User.name == 'wendy')) query.filter(and_(User.name == 'ed', User.fullname == 'Ed Jones'))2、filter_by語法:
keyword = expression
傳入參數的寫法,只需要用:(不帶類名的)列名 = 值 就可以判斷。
舉例:
query(User.name).filter_by(fullname=’Ed Jones’)舉例:
url = session.query(Spread_menu.url).filter_by(p_codes=p_codes).first() curlogger.info('In cal_spread_table, url = ' + str(url))總結
以上是生活随笔為你收集整理的【SQLAlchemy】简单整理filter和filter_by的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Apscheduler】不生效也不报错
- 下一篇: 【MySQL】存储过程中,怎么把多个se