从Django的raw()查询函数中获取数据?

时间:2013-12-02 10:50:56

标签: django django-queryset

我使用原始查询,但我无法找到如何获取所有行数据(对应每个表列)。如果我的输入查询有多个左连接。

1 个答案:

答案 0 :(得分:1)

据我所知,如果我正确理解了这个问题,那么raw()管理器方法可用于执行原始SQL查询:

 for p in Person.objects.raw('SELECT * FROM myapp_person'):

根据文档,这可以提供帮助:https://docs.djangoproject.com/en/dev/topics/db/sql/

对于多连接:

  SELECT table.id, other_table.name AS name from table join other_table using (id)

并将其传递到您的表模型中。然后,Django会将来自other_table的名称视为表中的名称并给出正常的表实例。您将查询传递给ModelName.objects.raw(查询)