Skip to content

Latest commit

 

History

History
28 lines (19 loc) · 1.03 KB

query.rst

File metadata and controls

28 lines (19 loc) · 1.03 KB

How to find the query associated with a queryset?

Sometimes, you want to know how a Django ORM makes our queries execute or what is the corresponding SQL of the code you are writing. This is very straightforward. You can get str of any queryset.query to get the SQL.

You have a model called Event. For getting all records, you will write something like Event.objects.all(), then do str(queryset.query)

>>> queryset = Event.objects.all()
>>> str(queryset.query)
SELECT "events_event"."id", "events_event"."epic_id",
    "events_event"."details", "events_event"."years_ago"
    FROM "events_event"

sql_query.png

Example 2

>>> queryset = Event.objects.filter(years_ago__gt=5)
>>> str(queryset.query)
SELECT "events_event"."id", "events_event"."epic_id", "events_event"."details",
"events_event"."years_ago" FROM "events_event"
WHERE "events_event"."years_ago" > 5