通过django查询使用Redshift的原生'AT TIMEZONE'?

时间:2017-10-18 08:33:44

标签: python django amazon-redshift

所以我有这个查询,就像

query = MyModel.objects.filter(some_filter).filter(eventTime__date__gte=start_date).filter(eventTime__date__lte=end_date)....

我连接的redshift表的eventTime为UTC。它允许我在本机SQL中查询,如

select eventtime AT TIME ZONE 'MST' from mymodel limit 1;

如何在django查询格式中使用AT TIME ZONE 'MST'

1 个答案:

答案 0 :(得分:0)

出于"在时区" postgres和redshift是一样的。

这应该有所帮助 https://github.com/counsyl/django-postgres-timezones

Django在构造查询时不使用at时区语法,因此如果USE_TZ为False,则Django加载的时间戳(由Postgres转换)到settings.TIME_ZONE时区(记住Django使用该时区配置数据库连接)并作为天真的Python日期时间存储在你的模型上