如何使用SQLAlchemy实现内部联接?

如何使用SQLAlchemy实现内部联接?,第1张

如何使用SQLAlchemy实现内部联接

为此,您首先需要

session
制作一个
Query
。此外,
relationship
在MessageModel上使用可以很方便。

class MessageModel(base):    __tablename__ = 'messages'    player_id = Column(Integer,ForeignKey('chats.id'), nullable=False)    message = Column(String(2000), nullable=False)    time = Column(TIMESTAMP, server_default=func.now())    player = relationship(PlayerModel, backref="messages")

这将在两个模型上创建关系。

results = (session.query(PlayerModel)       .join(PlayerModel.messages)       .values(PlayerModel.username,    MessageModel.message,    MessageModel.time))# results will be a generator object# This seems a bit convoluted, but here you go.resultlist = []for username, message, time in results:    resultlist.append({'message': message, 'username': username, 'time': time})

可能会有更优雅的方法来处理您的数据结构,但是这种方法应该可行



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5668171.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存