【问题标题】:SQLAlchemy join - return all columns of one tableSQLAlchemy join - 返回一张表的所有列
【发布时间】:2015-02-26 17:14:33
【问题描述】:

我目前正在加入两个表,返回列表中列的行:

a = Table('a', server_metadata, autoload=True)
b = Table('b', server_metadata, autoload=True)

tickers = ['1', '2']
res = b.join(a).select().where(asset.c.code.in_(tickers)).execute()

这将返回来自ab 的正确行和所有列。如何只返回表b的所有列?

【问题讨论】:

    标签: python select join sqlalchemy


    【解决方案1】:

    select对应SQL查询的SELECT ...部分,默认为*;要将其限制为b.*,您可以给它一个包含表b 的列表;但是,使用此构造,您需要将 FROM 部分包装到 select_from 中,否则 SQLAlchemy 将生成子查询片段。因此:

    res = select([b]).select_from(b.join(a).\
        where(asset.c.code.in_(tickers))).execute()
    

    【讨论】:

      猜你喜欢
      • 2022-01-02
      • 1970-01-01
      • 1970-01-01
      • 2013-08-27
      • 1970-01-01
      • 2022-01-01
      • 2012-04-24
      • 2018-03-02
      • 1970-01-01
      相关资源
      最近更新 更多