0
SELECT
maintener.*,
(SELECT COUNT(*)
FROM device d
WHERE d.in_stock_maintener_id = maintener.id) AS in_stock_devices
FROM maintener;
すべてのメインテナを表示するレポートを作成していますが、デバイスモデルのリファレンスin_stock_maintener_idを見て、各メインテナが持つデバイスの数を表示する必要があります。sqlalchemyでこのクエリを作成する方法は?
私はこのモデルを私のpersist sqlalchemyに持っています。
class Maintener(persist.Base):
__tablename__ = 'maintener'
id = Column(Integer, primary_key=True)
name = Column(String(255))
document_number = Column(String(30))
phone_1 = Column(String(12))
phone_2 = Column(String(12))
email = Column(String(255))
class Device(persist.Base):
__tablename__ = 'device'
id = Column(Integer, primary_key=True)
serial = Column(String(45))
in_stock = Column(SmallInteger)
in_stock_maintener_id = Column(ForeignKey(u'maintener.id'), nullable=True, index=True)
in_stock_maintener = relationship(u'Maintener', lazy='noload', \
primaryjoin='Device.in_stock_maintener_id == Maintener.id')
誰も私を助けることができれば、私は=感謝するでしょう)
こんにちはバン、あなたのanwserは私を助けて、しかし、私はこの結果を得た: [(、2)、(<0x7f89c48f92e8でpersist.maintenance.Maintenerオブジェクト>、0) [ 0)] 0x7f89c48f9278>、(、()のようにin_stock_devicesはpersist.maintenance.Maintenerの1つの属性です –
答えを拡張します... – van