【flask_sqlalchemy】模糊查詢


flask_sqlalchemy的查詢方法有filter()和filter_()

這2個方法的主要區別如下:

模塊 語法 ><(大於和小於)查詢 and_和or_查詢
filter_by() 直接用屬性名,比較用= 不支持 不支持
filter() 用類名.屬性名,比較用== 支持 支持

 

若要進行模糊查詢,需要使用filter()方法

查詢方式:

objs = db_model.query.filter(db_model.api_url.like('%{keyword}%'.format(keyword=keyword))).all()

寫成函數:

    def update_like(self,keyword): '''模糊查詢''' objs = self.db_model.query.filter(self.db_model.api_url.like('%{keyword}%'.format(keyword=keyword))).all() obj_num = len(objs) for obj in objs: if obj.unusual=='True': obj_num=obj_num-1
            else: obj.unusual='True' db.session.commit() return '%d條記錄被更新'%obj_num

 

filter()方法支持 like,in ,not in ,and or查詢方式

具體使用方法:

 

參考文檔:

SQLAlchemy中filter_by()和filter()的用法區別

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM