是否可以将 AS sql 语句与 Django ORM 一起使用:
SELECT my_field AS something_shiny WHERE my_condition = 1
如果可能,那怎么做?
到目前为止,Django 文档说应该使用额外作为最后的手段。
因此,这是执行此查询的更好方法:
from django.db.models import F
Foo.objects.filter(cond=1).annotate(sth_shiny=F('my_field'))
使用 extra()
Foo.objects.filter(cond=1).extra(select={'sth_shiny':'my_field'})
然后sth_shiny
您可以访问结果 Foo 实例的吸引力