簡體   English   中英

SQLAlchemy 過濾器 - select 全部?

[英]SQLAlchemy filter - select all?

是否有通配符用於使用 SQLAlchemy 的“過濾器”選擇所有內容?

var = '*'
session.query().filter(results.name == var)

其中“*”是任何或全部,“var”會根據用戶的選擇而變化。 當用戶全選時,我希望它返回好像未應用過濾器一樣。

我可能正在接近這個錯誤,在這種情況下,這里是我的用例的解釋。 I am using flask and plotly to create a simple webpage where the user can select from 3 drop down boxes that subsets a data set and creates a line plot. 3 個選擇框中的選項之一是“全部”,如不應用過濾器。

使用filter

condition = results.name == var
if want == 'all' or want == '*':
    condition = True
session.query().filter(condition)

使用where

condition = results.name == var
if want == 'all' or want == '*':
    condition = True
session.query().where(condition)

where使用expression

from sqlalchemy import true
session.query().filter(true() if user_selection == '*' else results.name == var)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM