1
使用SQLAlchemy,給定一個列表,我想確定列表中哪些值不存在於sqlite數據庫表中的給定列中。其中一種方法如下:使用SQLAlchemy,確定哪些列表值不在數據庫列
def get_user_ids_not_in_DB(self, user_ids):
query__belongs = User_DB.user_id.in_(user_ids)
select__user_ids_in_DB = self.SQL_Helper.db.query(User_DB.user_id).filter(query__belongs)
user_ids_in_DB = zip(*select__user_ids_in_DB.all())[0]
return list(set(user_ids) - set(user_ids_in_DB))
有沒有更快/更有效的方法來完成同樣的事情?
身份運營商不能超載,所以'ualias.user_id是None'評估爲'FALSE'蟒蛇方等你SQL中有'WHERE'錯誤。使用'ualias.user_id.is_(None)'或'ualias.user_id == None',SQLAlchemy會自動轉換爲'IS'。 –
@IljaEverilä哎呀!接得好。我根據您的評論更新了我的答案 – Ray