簡體   English   中英

從peewee查詢選擇中刪除元素

[英]Delete an element from peewee Query select

我有Peewee的table.select()的查詢結果,可以說我想刪除一部分結果列表(QuerySelect),這是怎么做的? 或從查詢中排除某些元素?

#Edited
result = users.select();
for element in result:
   for name in list:
      if(element.name == name):
          removeThisElement()

我想從查詢結果中排除姓名列表

正如coleifer所說,由於您使用的是peewee,因此請使用SQL來完成,因此根據您的上一次編輯,解決方案應為:

result = User.select().where(User.name.not_in(a_list_of_names))

盡管列表理解也可以:

result = [user for user in Users.select() if user.name not in a_list_of_names]

文檔: Query.where

最好和最適當的方法是使用SQL來執行此操作:

User.select().where(User.name != 'myname')

然后,您的結果列表將被預先過濾。


如果您想過濾出名稱列表 ,則可以編寫

names_to_exclude = ['lord63', 'Newbie', 'etc']
users = User.select().where(User.name.not_in(names_to_exclude))

暫無
暫無

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

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