It's complicated :) Let's consider what happens when a query is executed with `datetime_trunc_sql` under `USE_TZ = True`.

Only one of the supported databases has proper time zone support: PostgreSQL. In this situation, it returns naive datetimes, which are used by Django as-is. While this is a reasonably safe choice, it isn't appropriate for Django, because we promise that the ORM will always return aware datetimes. Restoring the time zone used by the query makes sense here.

The other databases also return naive datetimes, but Django bolts on the UTC timezone. This is clearly wrong here. I wipe it and restore the time zone used by the query.