Django ORM简单加入

时间:2019-03-21 12:18:40

标签: django django-models django-orm

我想像这样执行简单的加入操作。

原始SQL:从风险中选择* *在r.sku_id = s.sku_id上加入sku_details;

型号详情:

identical(out, out2)
#[1] TRUE

加入后,我希望通过Django ORM将两个表的所有列都以平面结构显示。 在原始SQL中,我将获得所有列...但不能从ORM中获得

请帮助!!!

2 个答案:

答案 0 :(得分:1)

通过values(),很容易在字典列表中获取所有值:

Risks.objects.values(
    'risk_id',
    'risk_group_short_desc`,
    # ... fields you need from Risks
    'sku__sku_id',
    # ... fields you need from SkuDetails
)

您也可以签出values_list()

答案 1 :(得分:0)

您可以使用select_related来尝试。相关帮助material两者都是具有外键关系的模型。