我使用的是sqlalchemy 0.8,我只想获取输入的列名,而不是表中的所有列。
这是代码:
rec = raw_input("Enter keyword to search: ")
res = session.query(test.__table__).filter(test.fname == rec).first()
data = ','.join(map(str, res)) +","
print data
#saw this here @ SO but not the one I wanted. It displays all of the columns
columns = [m.key for m in data.columns]
print columns
答案 0 :(得分:0)
您只需查询所需的列即可。就像你有一些模型MyModel
你可以这样做:
session.query(MyModel.wanted_column1, ...) ... # rest of the query
这只会选择那里提到的所有列。
您可以使用select语法。
或者,如果您仍然希望返回模型对象并且未加载某些列,则可以使用deferred column loading。