我有一個正在用來查詢數據庫匹配的字典。我有一個查詢行不適合我。如果我有像這樣的列表:什麼是python'in',但sqlalchemy
user['names']= [Alice, Bob, John]
由於這是一個列表我試圖用這樣的:
q.filter(UserTable.firstname in user['firstnames'])
但不管是什麼原因,這是行不通的。但是,我知道Bob在數據庫中。當我手動拉下所有的查詢時,我可以看到名字在其中一行中。如果我這樣做:
q.filter(UserTable.firstname == user['firstnames'][1]) #Only does Bob
它的工作原理。並且,當我手動提取所有查詢時,將每一行轉換爲字典,然後執行
row[#row_that_matches].firstname in user['names']
也可以。但由於某些原因,在sqlalchemy中使用「in」關鍵字無法按預期工作。有沒有人知道一個替代方案,可以對值列表中的某些東西進行sqlalchemy查詢?
你可能想嘗試in_函數,我想。 Usertable.firstname.in_(user ['firstnames']) – Max