我正在尝试返回特定user_id的所有行。
当我运行下面的查询#1和#2时,它只返回它找到的第一行,即使我指定.all()
。
当我在#3中使用.with_entities
时,所有行都按预期返回。
我很欣赏第二双眼睛。谢谢。
如果重要的话,我正在使用MySQLDB(5.5.47版本),Flask 0.10.1和SQL-Alchemy 2.1。
仅返回第一行:
result = MyUserClass.query.filter_by(user_id=self.user_id).all()
这也只返回第一行:
result = MyUserClass.query.filter(MyUserClass.user_id == self.user_id).all()
按预期工作并返回所有行:
MyUserClass.query.filter_by(user_id=self.user_id).with_entities(MyUserClass.myColumn).all()
答案 0 :(得分:1)
used_id列被标记为类定义中的主键列(但不在MySQLDB中)。添加新列并使其成为主键可以解决问题。