我可以使用 Django 模型对数据库执行复杂查询吗?

Can I use Django models to preform complex queries on a database?

我想将 Django 用于数据库驱动的应用程序,我想知道 Django 模型是否允许我使用复杂查询来获取数据。

例如,我在数据库中有这个 table:

Click to show image

我想提取由此查询产生的数据。

SELECT name
FROM movies
WHERE year between 1995 AND 2001
AND rank between 6 and 9;

我怎样才能用 Django 做到这一点?

Movie.objects.filter(year__range(1995, 2001), rank__range(6, 9))

您可以使用过滤器来限制 Django 的查询集。