Djangoでgroup byした結果のMaxもしくはMinの値を取りたいとき

今回はDjangoでgroup byした結果のMaxもしくはMinの値を取りたいときどのようにすれば良いのかについてご紹介いたします。



Djangoでgroup byした結果のMaxもしくはMinの値を取りたい時

例えば、Examというmodelがあり、その中でperson、scoreというカラムがあるとします。

このmodelについて、personでgroup byしてscoreのmaxの値を取りたいとしましょう。

その場合、次のように書けば条件に合ったデータを取得可能です。

しかし、実行結果は次のようになるので注意しましょう。

もしselect_relatedなどで外部キーの情報も一緒に取りたい場合は、OuterRefなどが必要かもしれません。

終わりに

今回はDjangoでgroup byした結果のMaxもしくはMinの値を取りたいときどのようにすれば良いのかについてご紹介いたしました。

最後までお読みいただきありがとうございます。
よろしければブログやTwitterでのシェアをお願いしております。
コメントもお待ちしております。
誤植や勘違いなどございましたらコメント欄にて教えていただけると幸いです。

Youtubeチャンネル開設いたしました。
チャンネル登録者1000人を目指しているので、良いと思った方はチャンネル登録をお願いしたいです。
https://www.youtube.com/channel/UC219XhmSRxmXltTy6COxSMw






Django

Posted by ちこ