{"id":189,"date":"2022-09-26T23:37:40","date_gmt":"2022-09-26T14:37:40","guid":{"rendered":"http:\/\/192.168.0.16:3005\/?p=189"},"modified":"2022-10-08T11:05:31","modified_gmt":"2022-10-08T02:05:31","slug":"django-model-%e3%81%aeannotate%e3%81%8c%e9%9b%a3%e3%81%97%e3%81%8f%e3%81%a6%e5%b0%91%e3%81%97%e6%82%a9%e3%82%93%e3%81%a0","status":"publish","type":"post","link":"https:\/\/blog.solong.jp\/?p=189","title":{"rendered":"Django Model \u306eAnnotate\u304c\u96e3\u3057\u304f\u3066\u5c11\u3057\u60a9\u3093\u3060"},"content":{"rendered":"\n<p>View\u3067<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>result = SomeModel.objects.filter(p=p).values('key__id').annotate(sum=models.Sum('value'))<\/code><\/pre>\n\n\n\n<p>\u3063\u3066\u611f\u3058\u3067annotate\u3067\u3068\u3042\u308b\u30ad\u30fc\u306b\u5408\u81f4\u3059\u308b\u30ec\u30b3\u30fc\u30c9\u306e\u30b5\u30de\u30ea\u3092\u3068\u308d\u3046\u3068\u3057\u305f\u306e\u3060\u304c\u3001result\u306fQuerySet\u3060\u304b\u3089<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>result&#91;0]&#91;'sum']<\/code><\/pre>\n\n\n\n<p>\u306a\u3093\u3066\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3068\u30a8\u30e9\u30fc\uff08list index out of range\uff09\u304c\u3067\u3066\u3001\u3042\u30fc\u3001\u3060\u3081\u306a\u306e\u304b\u3063\u3066\u601d\u3063\u305f\u3002\u305d\u3053\u3067<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>result.first()&#91;'sum']<\/code><\/pre>\n\n\n\n<p>\u3063\u3066\u3084\u308b\u3068\u3001\u3042\u30fc\u52d5\u3044\u305f\u52d5\u3044\u305f\u3063\u3066\u5b89\u5fc3\u3057\u3066\u305f\u3093\u3060\u3051\u3069\u3082\u3001\u3069\u3046\u3082\u5408\u8a08\u304c10.0\u3042\u308b\u30ec\u30b3\u30fc\u30c9\u3082\u96c6\u8a08\u3055\u308c\u3066\u306a\u304f\u30661.0\u3068\u304b\u306b\u306a\u3063\u3066\u304a\u304b\u3057\u3044\u3002first()\u306e\u305b\u3044\u3067\u30011\u30ec\u30b3\u30fc\u30c9\u5206\u3060\u3051\u3092Sum\u3057\u3066\u3044\u308b\u6319\u52d5\u3068\u601d\u308f\u308c\u308b\u30fb\u30fb\u30fb\u3002[0]\u81ea\u4f53\u306f\u3088\u304f\u3066\u3001\u96c6\u8a08\u5bfe\u8c61\u306e\u884c\u304c\u306a\u3044\u3068\u304d\u306b[0]\u306f\u30a8\u30e9\u30fc\u306b\u306a\u3063\u3066\u3044\u308b\u3068\u3044\u3046\u3060\u3051\u306a\u306e\u3060\u3063\u305f\u3002\u3064\u307e\u308a\u3053\u308c\u3067\u3088\u304b\u3063\u305f\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>if(result.count == 0):\n    val = 0\nelse:\n    val = resuilt&#91;0].get('sum')<\/code><\/pre>\n\n\n\n<p>\u306a\u3093\u304b\u30b3\u30fc\u30c9\u304c\u3059\u3063\u304d\u308a\u3057\u306a\u3044\u3051\u3069\u3001\u3053\u308c\u304f\u3089\u3044\u306a\u30891\u884c\u3067\u66f8\u304f\u65b9\u6cd5\u304c\u4f55\u304b\u3042\u308a\u305d\u3046\u3002<br>PHP\u3060\u3068 $a = ( $i == &#8220;OK&#8221; ? True : False ) \u307f\u305f\u3044\u306a\u306e\u304c\u3067\u304d\u305f\u3051\u3069python\u3082\u3042\u308b\u306e\u304b\u306a\u3002<\/p>\n\n\n\n<p>\u8ffd\u8a18\uff1a\u8abf\u3079\u3066\u305f\u3089\u898b\u3064\u3051\u305f\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>val = 0 if result.count == 0 else result&#91;0].get('sum')<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>View\u3067 \u3063\u3066\u611f\u3058\u3067annotate\u3067\u3068\u3042\u308b\u30ad\u30fc\u306b\u5408\u81f4\u3059\u308b\u30ec\u30b3\u30fc\u30c9\u306e\u30b5\u30de\u30ea\u3092\u3068\u308d\u3046\u3068\u3057\u305f\u306e\u3060\u304c\u3001result\u306fQuerySet\u3060\u304b\u3089 \u306a\u3093\u3066\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3068\u30a8\u30e9\u30fc\uff08list index out of range\uff09\u304c\u3067\u3066\u3001\u3042\u30fc\u3001\u3060\u3081\u306a\u306e\u304b\u3063\u3066\u601d\u3063\u305f\u3002\u305d\u3053\u3067 \u3063\u3066\u3084\u308b\u3068\u3001\u3042\u30fc\u52d5\u3044\u305f\u52d5\u3044\u305f\u3063\u3066\u5b89\u5fc3\u3057\u3066\u305f\u3093\u3060\u3051\u3069\u3082\u3001\u3069\u3046\u3082\u5408\u8a08\u304c10.0\u3042\u308b\u30ec\u30b3\u30fc\u30c9\u3082\u96c6\u8a08\u3055\u308c\u3066\u306a\u304f\u30661.0\u3068\u304b\u306b\u306a\u3063\u3066\u304a\u304b\u3057\u3044\u3002first()\u306e\u305b\u3044\u3067\u30011\u30ec\u30b3\u30fc\u30c9\u5206\u3060\u3051\u3092Sum\u3057\u3066\u3044\u308b\u6319\u52d5\u3068\u601d\u308f\u308c\u308b\u30fb\u30fb\u30fb\u3002[0]\u81ea\u4f53\u306f\u3088\u304f\u3066\u3001\u96c6\u8a08\u5bfe\u8c61\u306e\u884c\u304c\u306a\u3044\u3068\u304d\u306b[0]\u306f\u30a8\u30e9\u30fc\u306b\u306a\u3063\u3066\u3044\u308b\u3068\u3044\u3046\u3060\u3051\u306a\u306e\u3060\u3063\u305f\u3002\u3064\u307e\u308a\u3053\u308c\u3067\u3088\u304b\u3063\u305f\u3002 \u306a\u3093\u304b\u30b3\u30fc\u30c9\u304c\u3059\u3063\u304d\u308a\u3057\u306a\u3044\u3051\u3069\u3001\u3053\u308c\u304f\u3089\u3044\u306a\u30891\u884c\u3067\u66f8\u304f\u65b9\u6cd5\u304c\u4f55\u304b\u3042\u308a\u305d\u3046\u3002PHP\u3060\u3068 $a = ( $i == &#8220;OK&#8221; ? True : False ) \u307f\u305f\u3044\u306a\u306e\u304c\u3067\u304d\u305f\u3051\u3069python\u3082\u3042\u308b\u306e\u304b\u306a\u3002 \u8ffd\u8a18\uff1a\u8abf\u3079\u3066\u305f\u3089\u898b\u3064\u3051\u305f\u3002<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[],"class_list":["post-189","post","type-post","status-publish","format-standard","hentry","category-web"],"_links":{"self":[{"href":"https:\/\/blog.solong.jp\/index.php?rest_route=\/wp\/v2\/posts\/189","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.solong.jp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.solong.jp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.solong.jp\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.solong.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=189"}],"version-history":[{"count":3,"href":"https:\/\/blog.solong.jp\/index.php?rest_route=\/wp\/v2\/posts\/189\/revisions"}],"predecessor-version":[{"id":211,"href":"https:\/\/blog.solong.jp\/index.php?rest_route=\/wp\/v2\/posts\/189\/revisions\/211"}],"wp:attachment":[{"href":"https:\/\/blog.solong.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=189"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.solong.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=189"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.solong.jp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=189"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}