how to retrive values form RawQuerySet in django?

有些话、适合烂在心里 提交于 2020-01-02 07:52:09

问题


my input query is

query = "select * from tab1 left join tab2 on tab2.patient_id =tab1.patient_id ,tab3 left join tab4 on tab4.patient_id =tab3.patient_id"

data = model_name.objects.raw(query)

How do you retrieve values from a RawQuerySet?


回答1:


The result obtained by making raw queries using raw method of Manager generates instances similar to instances generated using get or filter method. To get a field simply do obj_name.attr.
For eg:

class Tab(models.Model):
    field1 = models.BooleanField()
    field2 = models.PositiveIntegerField()

query = "select * from app_name_tab"
objs = Tab.objects.raw(query)
for obj in objs:
    print obj.field1, obj.field2

For more info, refer to https://docs.djangoproject.com/en/dev/topics/db/sql/



来源:https://stackoverflow.com/questions/20325168/how-to-retrive-values-form-rawqueryset-in-django

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!