["python","sql","django","database","django-database"]
How can I see the raw SQL queries Django is running?

Is there a way to show the SQL that Django is running while performing a query?
See the docs FAQ: "How can I see the raw SQL queries Django is running?" django.db.connection.queries contains a list of the SQL queries: from django.db import connection print(connection.queries) Querysets also have a query attribute containing the query to be executed: print(MyModel.objects.filter(name="my name").query) Note that the output of the query is not valid SQL, because: "Django never actually interpolates the parameters: it sends the query and the parameters separately to the database adapter, which performs the appropriate operations." From Django bug report #17741. Because of that, you should not send query output directly to a database. If you need to reset the queries to, for example, see how many queries are running in a given period, you can use reset_queries from django.db: from django.db import reset_queries from django.db import connection reset_queries() # Run your query here print(connection.queries) >>> []