Python、SQLAlchemy、从数据库获取id
我想制作一个Python(SQLAlchemy)程序,根据一个值从表中获取ID 例如,我有这样一个表:Python、SQLAlchemy、从数据库获取id,python,sqlalchemy,Python,Sqlalchemy,我想制作一个Python(SQLAlchemy)程序,根据一个值从表中获取ID 例如,我有这样一个表: ------------------------------- | ID | Name | ------------------------------- | 1 | Paul | ------------------------------- | 2 | Paul | ------
-------------------------------
| ID | Name |
-------------------------------
| 1 | Paul |
-------------------------------
| 2 | Paul |
-------------------------------
| 3 | John |
-------------------------------
list = session.query(Table).filter_by(Name='Paul')
list_id = []
for tuple in list :
list_id.append(tuple.id)
for id in list_id :
print(id)
我想检索名为Paul的ID
我所做的代码是这样的:
-------------------------------
| ID | Name |
-------------------------------
| 1 | Paul |
-------------------------------
| 2 | Paul |
-------------------------------
| 3 | John |
-------------------------------
list = session.query(Table).filter_by(Name='Paul')
list_id = []
for tuple in list :
list_id.append(tuple.id)
for id in list_id :
print(id)
有没有更简单的解决办法
谢谢 不需要中间列表来“保存”id,如果只使用一次,只需直接迭代查询即可
for row in session.query(Table).filter_by(Name='Paul'):
print(row.ID)
如果您只需要ID,您可以安排查询仅返回以下内容:
for ID in session.query(Table.ID).filter_by(Name='Paul'):
print(ID)
除此之外,
list
、tuple
和id
都是内置的,像这样隐藏它们是不好的形式;考虑使用<代码> PaulQuery <代码> <代码> PaulRow < /代码>和<代码>保罗。ID<代码>。如果您确实想要与内置名相同的名称,list\u
、tuple\u
或id\u
可能更好