Python, SQLAlchemy,从数据库获取ID

0 投票
1 回答
2530 浏览
提问于 2025-04-18 18:14

我想写一个Python程序(使用SQLAlchemy),这个程序可以根据某个值从表格中获取ID。

比如,我有一个这样的表:

-------------------------------
|     ID       |     Name     |
-------------------------------
|     1        |     Paul     |
-------------------------------
|     2        |     Paul     |
-------------------------------
|     3        |     John     |
-------------------------------

我想找出名字是Paul的那些ID。

我之前写的代码大概是这样的:

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)

有没有更简单的方法呢?

谢谢!

1 个回答

1

如果你只用一次这些ID,就不需要先把它们放在一个中间的列表里,可以直接对查询结果进行遍历。

for row in session.query(Table).filter_by(Name='Paul'):
   print(row.ID)

如果你只需要ID,可以让你的查询只返回这些ID:

for ID in session.query(Table.ID).filter_by(Name='Paul'):
   print(ID)

撰写回答