首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sqlalchemy:从联接表中选择

sqlalchemy:从联接表中选择
EN

Stack Overflow用户
提问于 2022-05-14 15:57:13
回答 1查看 61关注 0票数 1

如何用sqlalchemy编写这个sql查询?

代码语言:javascript
复制
SELECT
    n.name
FROM
    project_nomenclatures pn
    JOIN nomenclatures_sections ns on pn.nomenclature_id = ns.nomenclature_parent_id
    JOIN nomenclatures n on ns.nomenclature_id = n.id
WHERE
    pn.id = 2018

我试过这个:

代码语言:javascript
复制
        sql = (
            select(Nomenclature)
            .join(NomenclatureSection, and_(
                NomenclatureSection.nomenclature_id == Nomenclature.id,
                NomenclatureSection.nomenclature_parent_id == ProjectNomenclature.nomenclature_id
            ))
            .join(ProjectNomenclature, ProjectNomenclature.id == 2018)
        )

然后我试了一下:

代码语言:javascript
复制
        sql = (
            select(ProjectNomenclature, Nomenclature)
            .join(NomenclatureSection, NomenclatureSection.nomenclature_parent_id == ProjectNomenclature.nomenclature_id)
            .join(Nomenclature, NomenclatureSection.nomenclature_id == Nomenclature.id)
            .where(ProjectNomenclature.id == 2018)
        )

我甚至试过这个

代码语言:javascript
复制
        sql = (
            select(Nomenclature)
            .join(NomenclatureSection, NomenclatureSection.nomenclature_parent_id == ProjectNomenclature.nomenclature_id)
            .join(ProjectNomenclature, NomenclatureSection.id == ProjectNomenclature.nomenclature_id)
            .where(ProjectNomenclature.id == 2018)
        )

(我不知道如何用sqlalchemy编写这个sql查询。)提前谢谢你!!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-24 07:13:09

碰巧,我不得不使用select_from() func

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72241883

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档