{"id":280,"date":"2021-08-23T07:52:17","date_gmt":"2021-08-22T22:52:17","guid":{"rendered":"https:\/\/kitayama.jp\/?p=280"},"modified":"2021-08-23T07:52:20","modified_gmt":"2021-08-22T22:52:20","slug":"laravel-db-%e8%a4%87%e9%9b%91%e3%81%aa-and-or-%e3%81%ab%e3%81%a4%e3%81%84%e3%81%a6","status":"publish","type":"post","link":"https:\/\/kitayama.jp\/?p=280","title":{"rendered":"laravel DB \u8907\u96d1\u306a and or \u306b\u3064\u3044\u3066"},"content":{"rendered":"\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-plain\"><code>\/\/ &#39;name&#39;\u30ab\u30e9\u30e0\u304c&#39;\u540d\u524d1&#39;\u306e\u30ec\u30b3\u30fc\u30c9\u3092\u53d6\u5f97\u3057\u305f\u3044\u5834\u5408\n$items = Item::where(&#39;name&#39;, &#39;\u540d\u524d1&#39;)-&gt;first();\n\n\/\/ A and B\n\/\/ &#39;name&#39;\u30ab\u30e9\u30e0\u304c&#39;\u540d\u524d1&#39;\u3067\u304b\u3064&#39;name&#39;\u30ab\u30e9\u30e0\u304c&#39;\u540d\u524d2&#39;\u306e\u30ec\u30b3\u30fc\u30c9\u3092\u53d6\u5f97\u3057\u305f\u3044\u5834\u5408\n$items = Item::where(&#39;name&#39;, &#39;\u540d\u524d1&#39;)-&gt;where(&#39;name&#39;, &#39;\u540d\u524d2&#39;)-&gt;first();\n\n\/\/ A or B\n\/\/ &#39;name&#39;\u30ab\u30e9\u30e0\u304c&#39;\u540d\u524d1&#39;\u306e\u30ec\u30b3\u30fc\u30c9\u3082\u3057\u304f\u306f&#39;name&#39;\u30ab\u30e9\u30e0\u304c&#39;\u540d\u524d2&#39;\u306e\u30ec\u30b3\u30fc\u30c9\u3092\u53d6\u5f97\u3057\u305f\u3044\u5834\u5408\n$items = Item::where(&#39;name&#39;, &#39;\u540d\u524d1&#39;)\n        -&gt;orWhere(&#39;name&#39;, &#39;\u540d\u524d2&#39;)\n        -&gt;first();\n\n\/\/ (A and B) or C (and\u304c\u5f37\u3044\u305f\u3081\u7279\u5225\u306a\u51e6\u7406\u306f\u5fc5\u8981\u306a\u3044)\n\/\/ &#39;name&#39;\u30ab\u30e9\u30e0\u304c&#39;\u540d\u524d1&#39;\u304b\u3064&#39;name&#39;\u30ab\u30e9\u30e0\u304c&#39;\u540d\u524d2&#39;\u306e\u30ec\u30b3\u30fc\u30c9\u3082\u3057\u304f\u306f&#39;name&#39;\u30ab\u30e9\u30e0\u304c&#39;\u540d\u524d3&#39;\u306e\u30ec\u30b3\u30fc\u30c9\u3092\u53d6\u5f97\u3057\u305f\u3044\u5834\u5408\n$items = Item::where(&#39;name&#39;, &#39;\u540d\u524d1&#39;)\n        -&gt;where(&#39;name&#39;, &#39;\u540d\u524d2&#39;)\n        -&gt;orWhere(&#39;name&#39;, &#39;\u540d\u524d3&#39;)\n        -&gt;first();\n\n\/\/ A or (B and C)\n\/\/ &#39;name&#39;\u30ab\u30e9\u30e0\u304c&#39;\u540d\u524d1&#39;\u304b\u3064&#39;name&#39;\u30ab\u30e9\u30e0\u304c&#39;\u540d\u524d2&#39;\u306e\u30ec\u30b3\u30fc\u30c9\u3082\u3057\u304f\u306f&#39;name&#39;\u30ab\u30e9\u30e0\u304c&#39;\u540d\u524d3&#39;\u306e\u30ec\u30b3\u30fc\u30c9\u3092\u53d6\u5f97\u3057\u305f\u3044\u5834\u5408\n$items = Item::where(&#39;name&#39;, &#39;\u540d\u524d1&#39;)\n        -&gt;orWhere(&#39;name&#39;, &#39;\u540d\u524d2&#39;)\n        -&gt;where(&#39;name&#39;, &#39;\u540d\u524d3&#39;)\n        -&gt;first();\n\n\/\/ A and (B or C)\n\/\/ &#39;name&#39;\u30ab\u30e9\u30e0\u304c&#39;\u540d\u524d1&#39;\u306e\u30ec\u30b3\u30fc\u30c9\u3001\u304b\u3064&#39;name&#39;\u30ab\u30e9\u30e0\u304c&#39;\u540d\u524d2&#39;\u3082\u3057\u304f\u306f&#39;name&#39;\u30ab\u30e9\u30e0\u304c&#39;\u540d\u524d3&#39;\u306e\u30ec\u30b3\u30fc\u30c9\u3092\u53d6\u5f97\u3057\u305f\u3044\u5834\u5408\n$items = Item::where(&#39;name&#39;, &#39;\u540d\u524d1&#39;)\n        -&gt;where(function($query) {\n        $query-&gt;where(&#39;name&#39;, &#39;\u540d\u524d2&#39;)\n              -&gt;orwhere(&#39;name&#39;, &#39;\u540d\u524d3&#39;)\n        })\n        -&gt;first();\n\n\/\/ (A and B) or (C and D)\n$items = Item::where(&#39;name&#39;, &#39;\u540d\u524d1&#39;)\n        -&gt;where(&#39;name&#39;, &#39;\u540d\u524d2&#39;)\n        -&gt;orWhere(function($query) {\n        $query-&gt;where(&#39;name&#39;, &#39;\u540d\u524d2&#39;)\n              -&gt;where(&#39;name&#39;, &#39;\u540d\u524d3&#39;)\n        })\n        -&gt;first();\n\n\/\/ (A or B) and (C or D)\n$items = Item::where(function($query) {\n        $query-&gt;orWhere(&#39;name&#39;, &#39;\u540d\u524d1&#39;)\n              -&gt;orWhere(&#39;name&#39;, &#39;\u540d\u524d2&#39;)\n        -&gt;where(function($query) {\n        $query-&gt;orWhere(&#39;name&#39;, &#39;\u540d\u524d2&#39;)\n              -&gt;orWhere(&#39;name&#39;, &#39;\u540d\u524d3&#39;)\n        })\n        -&gt;first();\n\n\/\/ \u95a2\u6570\u3092\u4f7f\u3046\u5834\u5408\u3067\u5909\u6570\u3092\u4f7f\u3044\u305f\u3044\u5834\u5408\u306fuse\u3092\u4f7f\u3046\n$items = Item::where(&#39;name&#39;, &#39;\u540d\u524d1&#39;)\n        -&gt;where(function($query)use($user) {\n        $query-&gt;where(&#39;name&#39;, &#39;$user-&gt;name&#39;)\n              -&gt;orwhere(&#39;name&#39;, &#39;$user-&gt;name&#39;)\n          })\n        -&gt;first();<\/code><\/pre><\/div>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/kitayama.jp\/index.php?rest_route=\/wp\/v2\/posts\/280"}],"collection":[{"href":"https:\/\/kitayama.jp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kitayama.jp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kitayama.jp\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kitayama.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=280"}],"version-history":[{"count":1,"href":"https:\/\/kitayama.jp\/index.php?rest_route=\/wp\/v2\/posts\/280\/revisions"}],"predecessor-version":[{"id":281,"href":"https:\/\/kitayama.jp\/index.php?rest_route=\/wp\/v2\/posts\/280\/revisions\/281"}],"wp:attachment":[{"href":"https:\/\/kitayama.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=280"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kitayama.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=280"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kitayama.jp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=280"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}