繁体   English   中英

SQLAlchemy select 从一个表使用另一个表

[英]SQLAlchemy select from one table using another table

我有两张桌子:

CREATE TABLE IF NOT EXISTS product (
  id SERIAL PRIMARY KEY,
  name TEXT NOT NULL,
);
CREATE TABLE report_product (
  country VARCHAR(256) NOT NULL,
  date_time TIMESTAMP NOT NULL,
  product_id INTEGER NOT NULL,
  how_many INTEGER,
  PRIMARY KEY(country, date_time, product_id)
);
ALTER TABLE report_product
    ADD CONSTRAINT fk_report_product_product
    FOREIGN KEY (product_id) 
    REFERENCES product (id);

关键是,我想SELECTreport_product整行,但只有产品名称。 是否可以先查找产品: db.session().query(Product).filter(Product.name == name).first()然后获取其 id,然后再进行查询以查找特定report 或者我可以更轻松地完成它?

您可以通过关系过滤: db.session().query(ReportProduct).join(ReportProduct.product).filter(Product.name == name).first()

请参阅文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM