使用SqlAlchemy选择和连接函数创建SQL查询

时间:2009-06-04 14:21:32

标签: python sqlalchemy

我有两个表“tags”和“deal_tag”,表格定义如下,

Table('tags', metadata,
          Column('id', types.Integer(), Sequence('tag_uid_seq'),
              primary_key=True),
          Column('name', types.String()),
         )

Table('deal_tag', metadata,
       Column('dealid', types.Integer(), ForeignKey('deals.id')),
       Column('tagid', types.Integer(), ForeignKey
           ('tags.id')),
        )

我想选择代码ID,代码名称和交易数量(每笔交易数量) 标签)。示例查询是

SELECT tags.Name,tags.id,COUNT(deal_tag.dealid) FROM tags INNER JOIN
deal_tag ON tags.id = deal_tag.tagid GROUP BY deal_tag.tagid;

如何使用SqlAlchemy select& amp;创建上述查询?加入函数?

2 个答案:

答案 0 :(得分:2)

试一试......

s = select([tags.c.Name, tags.c.id, func.count(deal_tag.dealid)], 
           tags.c.id == deal_tag.c.tagid).group_by(tags.c.Name, tags.c.id)

答案 1 :(得分:0)

你可以在映射表的时候加入表

orm.mapper()

中的

有关详细信息,您可以通过链接

www.sqlalchemy.org/docs /