1

Django.models を使用して MySQL にクエリを実行したいのですが、created_at(Datetime フィールド) をdatetime.datetime.now()に設定しているため、各日付で "グループ化" するのが難しいようです。次のようなクエリを作成しました。

start = time.strptime("2012/6/25","%Y/%m/%d")
end = time.strptime("2012/6/26","%Y/%m/%d")
unix_start= time.mktime(start)
unix_end = time.mktime(end)

Mymodels.objects.filter(created_at__range[datetime.datetime.fromtimestamp(unix_start),datetime.datetime.fromtimestamp(unix_end]).values("~~~~~").annotate(player_id=Count("player_id"))

私のMySQLデータがdatetime.datetime.now()の場合、Django.modelsでdatetime.dateまたは(MySQLのdate())で「グループ化」する方法はありますか?

4

1 に答える 1

1

PostgreSQL を使用date_trunc()して、日付が Datetime として保存される日付で値をグループ化します。MySQLで次のようなものを使用できると思います:

select_date = {"date": """DATE_FORMAT(start, '%Y-%m-%d')"""}
query = query.extra(select=select_date).values('date')
query = query.annotate(player_id=Count('player_id', distinct=True)).order_by('date')
于 2012-06-29T08:45:11.063 に答える