带时区的时间戳,使用django ORM未知

时间:2019-01-11 08:24:29

标签: python django postgresql django-orm

从MariaDB转移到postgres-10后,我遇到了以下错误 我正在使用Django-orm

  
    

函数date_format(带时区的时间戳,未知)不存在     第1行:SELECT(DATE_FORMAT(created_at,'%h%p'))AS为“ in_hours”,SUM(...

         
      

提示:没有函数与给定的名称和参数类型匹配。您可能需要添加显式类型转换。

    
  
Model.objects.filter(franchise=franchise)\
             .filter(created_at__date=date)\
             .extra(select={'in_hours': "DATE_FORMAT(created_at,'%%h %%p')"}) \
             .values('in_hours')\
             .order_by('created_at__hour')\
             .annotate(total_amount=Sum('amount'))

任何人都可以解释它出了什么问题。 谢谢

1 个答案:

答案 0 :(得分:1)

Postgres中没有DATE_FORMAT函数,必须使用TO_CHAR https://www.postgresql.org/docs/9.1/functions-formatting.html