1

使用 SQL Alchemy,我想知道是否可以从任何 SQL 查询中获取所有列的列表。

例如,如果我调用此查询:

SELECT * FROM users;

我需要所有结果,还需要 table 中所有列的列表users

我知道我可以点击表信息架构,但我的问题也会影响任何类型的查询,例如:

SELECT u.*, f.name, f.size FROM users u LEFT JOIN files f ON f.user_id = u.id;

我从 SQL Alchemy 中看到了这个选项[column_description][1],但我不知道它是否只适用于 ORM 样式;我使用的是非 ORM 样式(我将直接编写查询)。

4

1 回答 1

2

使用ResultProxy.keys()

sql = "SELECT * FROM users;"
res_proxy = session.execute(sql)
column_names = res_proxy.keys()

但是,我同意马克的观点,即不应将SELECT *其用作一般规则。

于 2012-07-23T07:51:24.297 回答