{"id":990,"date":"2025-06-12T04:21:19","date_gmt":"2025-06-11T20:21:19","guid":{"rendered":"https:\/\/www.zhaozhao123.cn\/php\/php-application-manual\/laravel\/990.html"},"modified":"2025-06-12T04:21:19","modified_gmt":"2025-06-11T20:21:19","slug":"eloquent%ef%bc%9a%e4%ba%94%e7%a7%8d%e4%bb%8e%e6%9f%a5%e8%af%a2%e7%bb%93%e6%9e%9c%e4%b8%ad%e6%8e%92%e9%99%a4%e7%89%b9%e5%ae%9a%e5%88%97%e7%9a%84%e6%96%b9%e6%b3%95","status":"publish","type":"my1js","link":"https:\/\/www.zhaozhao123.cn\/php\/my1js\/990.html","title":{"rendered":"Eloquent\uff1a\u4e94\u79cd\u4ece\u67e5\u8be2\u7ed3\u679c\u4e2d\u6392\u9664\u7279\u5b9a\u5217\u7684\u65b9\u6cd5"},"content":{"rendered":"<div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<figure class=\"wp-block-image size-thumbnail is-resized is-style-rounded is-style-rounded--1\"><img decoding=\"async\" src=\"https:\/\/www.zhaozhao123.cn\/myitems\/images\/sites16\/2025\/06\/dyA-1-400x300.jpg\" alt=\"Bug&#32534;&#35793;&#29422;\" class=\"wp-image-1842\" style=\"object-fit:cover;width:30px;height:30px\"><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading my-0\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.175), 1rem);\">Bug&#32534;&#35793;&#29422;<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<p>Eloquent &#26159; Laravel &#26694;&#26550;&#20013;&#30340;&#19968;&#20010;&#38750;&#24120;&#24378;&#22823;&#19988;&#28789;&#27963;&#30340; ORM&#65288;&#23545;&#35937;&#20851;&#31995;&#26144;&#23556;&#65289;&#12290;&#23427;&#25552;&#20379;&#20102;&#20016;&#23500;&#30340;&#26041;&#27861;&#26469;&#22788;&#29702;&#25968;&#25454;&#24211;&#26597;&#35810;&#32467;&#26524;&#65292;&#24182;&#26681;&#25454;&#38656;&#35201;&#25490;&#38500;&#29305;&#23450;&#21015;&#12290;&#20197;&#19979;&#26159; Eloquent &#20013;&#20960;&#31181;&#24120;&#35265;&#30340;&#26041;&#27861;&#26469;&#20174;&#26597;&#35810;&#32467;&#26524;&#20013;&#25490;&#38500;&#29305;&#23450;&#21015;&#65306;<\/p>\n<h3>1. &#20351;&#29992; <code>select<\/code> &#26041;&#27861;<\/h3>\n<p>&#20320;&#21487;&#20197;&#20351;&#29992; <code>select<\/code> &#26041;&#27861;&#26469;&#25351;&#23450;&#35201;&#36820;&#22238;&#30340;&#21015;&#12290;&#20363;&#22914;&#65292;&#22914;&#26524;&#20320;&#24819;&#35201;&#33719;&#21462;&#25152;&#26377;&#29992;&#25143;&#30340;&#21517;&#31216;&#21644;&#37038;&#31665;&#65292;&#20294;&#19981;&#21253;&#25324;&#20854;&#20182;&#23383;&#27573;&#65292;&#21487;&#20197;&#36825;&#26679;&#20570;&#65306;<\/p>\n<pre><code class=\"language-php\">$users = User::select('name', 'email')-&gt;get();<\/code><\/pre>\n<h3>2. &#20351;&#29992; <code>only<\/code> &#26041;&#27861;<\/h3>\n<p><code>only<\/code> &#26041;&#27861;&#20801;&#35768;&#20320;&#22312;&#26597;&#35810;&#32467;&#26524;&#20013;&#21482;&#36873;&#25321;&#25351;&#23450;&#30340;&#21015;&#12290;&#36825;&#27604;&#20351;&#29992; <code>select<\/code> &#26041;&#27861;&#26356;&#31616;&#27905;&#65292;&#22240;&#20026;&#19981;&#38656;&#35201;&#25351;&#23450;&#25152;&#26377;&#21015;&#12290;&#20363;&#22914;&#65306;<\/p>\n<pre><code class=\"language-php\">$users = User::only('name', 'email')-&gt;get();<\/code><\/pre>\n<h3>3. &#20351;&#29992; <code>except<\/code> &#26041;&#27861;<\/h3>\n<p><code>except<\/code> &#26041;&#27861;&#29992;&#20110;&#25490;&#38500;&#25351;&#23450;&#30340;&#21015;&#12290;&#23427;&#31867;&#20284;&#20110; <code>select<\/code> &#26041;&#27861;&#65292;&#20294;&#20250;&#25490;&#38500;&#32780;&#19981;&#26159;&#20445;&#30041;&#21015;&#12290;&#20363;&#22914;&#65306;<\/p>\n<pre><code class=\"language-php\">$users = User::except(['created_at', 'updated_at'])-&gt;get();<\/code><\/pre>\n<h3>4. &#20351;&#29992; <code>without<\/code> &#26041;&#27861;<\/h3>\n<p><code>without<\/code> &#26041;&#27861;&#19982; <code>except<\/code> &#31867;&#20284;&#65292;&#20294;&#23427;&#20250;&#22312;&#26597;&#35810;&#32467;&#26524;&#20013;&#21024;&#38500;&#25351;&#23450;&#30340;&#21015;&#65292;&#32780;&#19981;&#26159;&#25490;&#38500;&#23427;&#20204;&#12290;&#20363;&#22914;&#65306;<\/p>\n<pre><code class=\"language-php\">$users = User::without(['created_at', 'updated_at'])-&gt;get();<\/code><\/pre>\n<h3>&#31034;&#20363;&#20195;&#30721;<\/h3>\n<p>&#20197;&#19979;&#26159;&#19968;&#20010;&#23436;&#25972;&#30340;&#31034;&#20363;&#65292;&#23637;&#31034;&#20102;&#22914;&#20309;&#20351;&#29992;&#36825;&#20123;&#26041;&#27861;&#65306;<\/p>\n<pre><code class=\"language-php\">use AppModelsUser;\n\n\/\/ &#33719;&#21462;&#25152;&#26377;&#29992;&#25143;&#24182;&#21482;&#36873;&#25321; name &#21644; email &#21015;\n$usersWithOnlyNameAndEmail = User::select('name', 'email')-&gt;get();\n\n\/\/ &#33719;&#21462;&#25152;&#26377;&#29992;&#25143;&#24182;&#25490;&#38500; created_at &#21644; updated_at &#21015;\n$usersWithoutCreatedAtAndUpdateAt = User::except(['created_at', 'updated_at'])-&gt;get();\n\n\/\/ &#33719;&#21462;&#25152;&#26377;&#29992;&#25143;&#24182;&#21024;&#38500; created_at &#21644; updated_at &#21015;\n$usersWithoutCreatedAtAndUpdateAt = User::without(['created_at', 'updated_at'])-&gt;get();<\/code><\/pre>\n<p>&#36890;&#36807;&#36825;&#20123;&#26041;&#27861;&#65292;&#20320;&#21487;&#20197;&#28789;&#27963;&#22320;&#25511;&#21046;&#26597;&#35810;&#32467;&#26524;&#20013;&#30340;&#21015;&#65292;&#20174;&#32780;&#28385;&#36275;&#19981;&#21516;&#30340;&#38656;&#27714;&#12290;<\/p>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div><div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<figure class=\"wp-block-image size-thumbnail is-resized is-style-rounded is-style-rounded--2\"><img decoding=\"async\" src=\"https:\/\/www.zhaozhao123.cn\/myitems\/images\/sites16\/2025\/06\/zp-400x300.jpg\" alt=\"&#40657;&#26495;Bug&#35762;&#24072;\" class=\"wp-image-1849\" style=\"object-fit:cover;width:30px;height:30px\"><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading my-0\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.175), 1rem);\">&#40657;&#26495;Bug&#35762;&#24072;<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<body><h2>&#20171;&#32461;<\/h2><p>Eloquent ORM &#26159; Laravel &#20013;&#19968;&#20010;&#24378;&#22823;&#30340;&#21644;&#20248;&#38597;&#30340;&#26041;&#24335;&#26469;&#19982;&#25968;&#25454;&#24211;&#20132;&#20114;&#12290;&#26377;&#26102;&#65292;&#20320;&#38656;&#35201;&#20174;&#26597;&#35810;&#32467;&#26524;&#20013;&#25490;&#38500;&#29305;&#23450;&#30340;&#21015;&#20197;&#20248;&#21270;&#24615;&#33021;&#12289;&#23433;&#20840;&#24615;&#25110;&#25968;&#25454;&#36716;&#25442;&#12290;&#26412;&#25991;&#23558;&#25506;&#35752;&#20960;&#31181;&#22312; Laravel &#20013;&#23454;&#29616;&#36825;&#20123;&#26041;&#27861;&#30340;&#26041;&#27861;&#12290;<\/p><h2>&#20351;&#29992; SELECT &#35821;&#21477;&#24182;&#25351;&#23450;&#29305;&#23450;&#30340;&#21015;&#12290;<\/h2><p>&#25351;&#23450;&#24744;&#24819;&#35201;&#30340;&#21015;&#65292;&#32780;&#19981;&#26159;&#35201;&#25490;&#38500;&#30340;&#21015;&#12290;<\/p><p>&#25191;&#34892;&#26597;&#35810;&#20197;&#33719;&#21462;&#20165;&#21253;&#21547;&#25351;&#23450;&#21015;&#30340;&#32467;&#26524;&#12290;<\/p><p>&#35831;&#21015;&#20986;&#24744;&#24076;&#26395;&#21253;&#21547;&#22312;&#32467;&#26524;&#20013;&#30340;&#21015;&#12290;<\/p><p>&#35831;&#24320;&#22987;&#24744;&#30340;&#26597;&#35810;&#65292;&#20351;&#29992;&ldquo;select&rdquo;&#26041;&#27861;&#12290;<\/p><p>&#35831;&#25552;&#20379;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<\/p><pre><code>\/\/ only select 2 columns 'name' and 'email'\nUser::select('name', 'email')-&gt;get();\n<\/code><\/pre><p>&#27880;&#24847;&#65306;&#39640;&#25928;&#19988;&#31616;&#27905;&#65292;&#20294;&#24744;&#24517;&#39035;&#22312;&#24320;&#22987;&#20043;&#21069;&#30693;&#36947;&#38656;&#35201;&#21738;&#20123;&#21015;&#12290;<\/p><h2>&#22312;&#27169;&#22411;&#19978;&#20351;&#29992; &#8216;hidden&#8217; &#23646;&#24615;&#12290;<\/h2><p>&#20026;&#32473;&#23450;&#27169;&#22411;&#38544;&#34255;&#30340;&#23646;&#24615;&#24212;&#23450;&#20041;&#22312;&#25152;&#26377;&#26597;&#35810;&#20013;&#12290;<\/p><p>&#25353;&#29031;&#24120;&#35268;&#25552;&#21462;&#25968;&#25454;&#65292;&#25351;&#23450;&#30340;&#21015;&#23558;&#33258;&#21160;&#25490;&#38500;&#12290;<\/p><p>&#35831;&#22312;&#19979;&#38754;&#30340;&#25968;&#32452;&#20013;&#28155;&#21152;&#24744;&#24076;&#26395;&#25490;&#38500;&#30340;&#21015;&#21517;&#12290;<\/p><p>&#22312;Eloquent&#27169;&#22411;&#20013;&#65292;&#35831;&#25351;&#23450;&#19968;&#20010;<code>hidden<\/code>&#23558;&#36130;&#20135;&#20316;&#20026;&#25968;&#32452;&#22788;&#29702;&#12290;<\/p><p>&#22909;&#30340;&#65292;&#35831;&#25552;&#20379;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<\/p><pre><code>\n\/\/ Example in User model\nprotected $hidden = ['password'];\n\n\/\/ Query\nUser::all();\n<\/code><\/pre><p>&#27880;&#24847;&#65306;&#38750;&#24120;&#36866;&#21512;&#20110;&#24212;&#35813;&#22987;&#32456;&#38544;&#34255;&#30340;&#21015;&#65292;&#20363;&#22914;&#23494;&#30721;&#65292;&#20294;&#19981;&#36866;&#29992;&#20110;&#19968;&#27425;&#24615;&#26597;&#35810;&#12290;<\/p><h2>&#22312;Collection Results&#19978;&#20351;&#29992;&lsquo;makeHidden&rsquo;&#12290;<\/h2><p>&#22312;&#26597;&#35810;&#32423;&#21035;&#21160;&#24577;&#38544;&#34255;JSON&#36755;&#20986;&#20013;&#30340;&#23646;&#24615;&#12290;<\/p><p>&#36820;&#22238;&#25110;&#22312;&#38656;&#35201;&#26102;&#20351;&#29992;&#20462;&#25913;&#21518;&#30340;&#38598;&#21512;&#12290;<\/p><p>&#35831;&#25552;&#20379;&#24744;&#24076;&#26395;&#25490;&#38500;&#30340;&#21015;&#21517;&#25968;&#32452;&#12290;<\/p><p>&#22312;&#33719;&#21462;&#26597;&#35810;&#32467;&#26524;&#21518;&#65292;&#38142;&#20837;&#12290;<code>makeHidden()<\/code>&#26041;&#27861;&#12290;<\/p><p>&#22909;&#30340;&#65292;&#35831;&#25552;&#20379;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<\/p><pre><code>\n\/\/ makeHidden 'password'\nUser::all()-&gt;makeHidden(['password']);\n<\/code><\/pre><p>&#27880;&#24847;&#20107;&#39033;&#65306;&#36825;&#31181;&#26041;&#27861;&#38750;&#24120;&#36866;&#21512;&#20110;&#20020;&#26102;&#26597;&#35810;&#65307;&#28982;&#32780;&#65292;&#21482;&#26377;&#22312;JSON&#34920;&#31034;&#24418;&#24335;&#20013;&#25165;&#33021;&#38544;&#34255;&#21015;&#12290;<\/p><h2>&#36807;&#28388;&#21518;&#30340;&#26597;&#35810;&#35821;&#21477;<\/h2><p>&#35831;&#25552;&#20379;&#24744;&#24076;&#26395;&#21253;&#21547;&#30340;&#21015;&#21517;&#65292;&#20197;&#20415;&#25105;&#20026;&#24744;&#32534;&#20889;&#30456;&#24212;&#30340;SQL&#26597;&#35810;&#12290;<\/p><p>&#25191;&#34892;&#21040;&#25968;&#25454;&#24211;&#30340;&#21407;&#22987;SQL&#12290;<\/p><p>&#35201;&#35686;&#24789;&#19982;SQL&#27880;&#20837;&#31561;&#23433;&#20840;&#38382;&#39064;&#30456;&#20851;&#30340;&#39118;&#38505;&#12290;<\/p><p>&#22909;&#30340;&#65292;&#35831;&#38382;&#24744;&#38656;&#35201;&#25105;&#36827;&#34892;&#20160;&#20040;&#31867;&#22411;&#30340;&#32763;&#35793;&#65311;&#20363;&#22914;&#65292;&#33521;&#35821;&#21040;&#20013;&#25991;&#30340;&#32763;&#35793;&#12289;&#20013;&#25991;&#21040;&#33521;&#25991;&#30340;&#32763;&#35793;&#36824;&#26159;&#20854;&#20182;&#35821;&#35328;&#20043;&#38388;&#30340;&#32763;&#35793;&#65311;&#35831;&#25552;&#20379;&#20855;&#20307;&#30340;&#25991;&#26412;&#25110;&#20449;&#24687;&#20197;&#20415;&#20110;&#25105;&#24320;&#22987;&#32763;&#35793;&#24037;&#20316;&#12290;<code>DB::select<\/code>&#26041;&#27861;&#21644;&#25490;&#38500;&#26576;&#20123;&#21015;&#12290;<\/p><p>&#35831;&#25552;&#20379;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<\/p><pre><code>\/\/ columns 'name' and 'email'\n$results = DB::select(DB::raw('SELECT name, email FROM users'));<\/code><\/pre><h2>&#20351;&#29992;&#26597;&#35810;&#33539;&#22260;&#20197;&#25552;&#39640;&#21487;&#37325;&#29992;&#24615;<\/h2><p>&#22312;&#24744;&#30340;&#27169;&#22411;&#19978;&#23450;&#20041;&#26597;&#35810;&#33539;&#22260;&#20197;&#23553;&#35013;&#26597;&#35810;&#36923;&#36753;&#65306;<\/p><p>&#22312;&#38656;&#35201;&#25490;&#38500;&#26576;&#20123;&#21015;&#26102;&#65292;&#21487;&#20197;&#38543;&#26102;&#24212;&#29992;&#33539;&#22260;&#12290;<\/p><p>&#35831;&#25552;&#20379;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<code>select<\/code>&#26041;&#27861;&#26469;&#25351;&#23450;&#35201;&#21253;&#25324;&#30340;&#21015;&#12290;<\/p><p>&#22312;&#24744;&#30340;Eloquent&#27169;&#22411;&#20013;&#28155;&#21152;&#19968;&#20010;&#20989;&#25968;&#65292;&#35813;&#20989;&#25968;&#36820;&#22238;&#19968;&#20010;&#20462;&#25913;&#21518;&#30340;&#26597;&#35810;&#12290;<\/p><p>&#22909;&#30340;&#65292;&#35831;&#25552;&#20379;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<\/p><pre><code>\n\/\/ In User model\npublic function scopeWithoutPassword($query)\n{\n    return $query-&gt;select('name', 'email');\n}\n\n\/\/ Usage\nUser::withoutPassword()-&gt;get();\n\n\n<\/code><\/pre><h2>&#32467;&#35770;<\/h2><p>&#24635;&#32467;&#19968;&#19979;&#65292;Laravel &#25552;&#20379;&#20102;&#22810;&#31181;&#26041;&#27861;&#26469;&#25490;&#38500; Eloquent &#26597;&#35810;&#20013;&#30340;&#21015;&#65292;&#27599;&#31181;&#26041;&#27861;&#37117;&#26377;&#20854;&#36866;&#29992;&#22330;&#26223;&#21644;&#20248;&#32570;&#28857;&#12290;&#26080;&#35770;&#24744;&#20351;&#29992;&#30340;&#26159;&ldquo;select&rdquo;&#21644;&ldquo;hidden&rdquo;&#29305;&#24615;&#12289;&#21033;&#29992;&#38598;&#21512;&#26041;&#27861;&#22914;&ldquo;makeHidden&rdquo;&#65292;&#36824;&#26159;&#32534;&#20889;&#33258;&#23450;&#20041;&#26597;&#35810;&#21644;&#33539;&#22260;&#65292;Laravel &#37117;&#25552;&#20379;&#20102;&#28789;&#27963;&#24615;&#21644;&#24378;&#22823;&#30340;&#21151;&#33021;&#65292;&#20197;&#20248;&#21270;&#24744;&#30340;&#24212;&#29992;&#25152;&#26816;&#32034;&#21644;&#22788;&#29702;&#30340;&#25968;&#25454;&#12290;&#20180;&#32454;&#32771;&#34385;&#21738;&#31181;&#26041;&#27861;&#26368;&#36866;&#21512;&#24744;&#30340;&#20855;&#20307;&#24773;&#20917;&#65292;&#20197;&#33719;&#24471;&#26368;&#20339;&#30340;&#21151;&#33021;&#24179;&#34913;&#12289;&#24615;&#33021;&#21644;&#23433;&#20840;&#24615;&#12290;<\/p><\/body>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div><div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<figure class=\"wp-block-image size-thumbnail is-resized is-style-rounded is-style-rounded--3\"><img decoding=\"async\" src=\"https:\/\/www.zhaozhao123.cn\/myitems\/images\/sites16\/2025\/06\/xygcfznnzczhsdmwydzhsmzzzmddnq-400x300.jpg\" alt=\"&#38271;&#24037;&#30721;&#22900;1523\" class=\"wp-image-2906\" style=\"object-fit:cover;width:30px;height:30px\"><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading my-0\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.175), 1rem);\">&#38271;&#24037;&#30721;&#22900;1523<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<p>&#22312;&#25968;&#25454;&#24211;&#26597;&#35810;&#20013;&#65292;&#26377;&#26102;&#20505;&#25105;&#20204;&#38656;&#35201;&#26681;&#25454;&#19968;&#23450;&#30340;&#26465;&#20214;&#26469;&#31579;&#36873;&#20986;&#24819;&#35201;&#30340;&#25968;&#25454;&#65292;&#24182;&#19988;&#19981;&#24076;&#26395;&#30475;&#21040;&#26576;&#20123;&#19981;&#38656;&#35201;&#30340;&#20449;&#24687;&#12290;&#36825;&#26102;&#20505;&#65292;&#25105;&#20204;&#23601;&#21487;&#20197;&#20351;&#29992;SQL&#30340;<code>EXCEPT<\/code>&#25805;&#20316;&#31526;&#25110;&#32773;&#23376;&#26597;&#35810;&#26469;&#23454;&#29616;&#36825;&#20010;&#38656;&#27714;&#12290;&#19979;&#38754;&#25105;&#20204;&#23601;&#26469;&#30475;&#30475;&#36825;&#20116;&#31181;&#26041;&#27861;&#12290;<\/p>\n<h3>1. &#20351;&#29992; <code>EXCEPT<\/code> &#25805;&#20316;&#31526;<\/h3>\n<p><code>EXCEPT<\/code> &#25805;&#20316;&#31526;&#29992;&#20110;&#36820;&#22238;&#20004;&#20010;&#26597;&#35810;&#30340;&#32467;&#26524;&#38598;&#20043;&#38388;&#30340;&#24046;&#24322;&#37096;&#20998;&#65292;&#23427;&#20250;&#21024;&#38500;&#31532;&#19968;&#20010;&#26597;&#35810;&#20013;&#30340;&#25152;&#26377;&#20803;&#32032;&#65292;&#28982;&#21518;&#21482;&#20445;&#30041;&#31532;&#20108;&#20010;&#26597;&#35810;&#30340;&#32467;&#26524;&#12290;&#22914;&#26524;&#31532;&#19968;&#20010;&#26597;&#35810;&#26159; <code>SELECT<\/code> &#26597;&#35810;&#65292;&#37027;&#20040; <code>EXCEPT<\/code> &#23558;&#21024;&#38500;&#31532;&#19968;&#20010;&#26597;&#35810;&#30340;&#25152;&#26377;&#34892;&#12290;<\/p>\n<pre><code class=\"language-sql\">SELECT * FROM table_name WHERE column1 NOT IN (SELECT column1 FROM other_table)<\/code><\/pre>\n<p>&#20363;&#22914;&#65292;&#20551;&#35774;&#26377;&#19968;&#20010;&#21517;&#20026; <code>sales_data<\/code> &#30340;&#34920;&#65292;&#20854;&#20013;&#21253;&#21547; <code>order_id<\/code>, <code>customer_id<\/code>, &#21644; <code>product_id<\/code>&#12290;&#25105;&#20204;&#24819;&#25214;&#20986;&#27599;&#20010;&#35746;&#21333;&#30340;&#23458;&#25143;&#25968;&#37327;&#65292;&#20294;&#19981;&#24819;&#30475;&#21040;&#27599;&#20010;&#23458;&#25143;&#30340;&#35746;&#21333;&#24635;&#25968;&#12290;&#25105;&#20204;&#21487;&#20197;&#20351;&#29992;&#20197;&#19979; SQL &#26597;&#35810;&#65306;<\/p>\n<pre><code class=\"language-sql\">SELECT customer_id, COUNT(DISTINCT order_id) as total_orders\nFROM sales_data\nLEFT JOIN (\n    SELECT order_id, customer_id\n    FROM sales_data\n    GROUP BY order_id, customer_id\n) ON sales_data.order_id = sales_data2.order_id AND sales_data.customer_id = sales_data2.customer_id\nGROUP BY customer_id;<\/code><\/pre>\n<p>&#22312;&#36825;&#20010;&#20363;&#23376;&#20013;&#65292;<code>LEFT JOIN<\/code> &#34920;&#31034;&#36830;&#25509;&#20004;&#20010;&#34920;&#65292;&#32780; <code>COUNT(DISTINCT order_id)<\/code> &#35745;&#31639;&#27599;&#20010;&#23458;&#25143;&#26377;&#22810;&#23569;&#20010;&#19981;&#21516;&#30340;&#35746;&#21333;ID&#12290;&#36825;&#26679;&#65292;&#25105;&#20204;&#23601;&#24471;&#21040;&#20102;&#27599;&#20010;&#23458;&#25143;&#30340;&#35746;&#21333;&#25968;&#65292;&#21516;&#26102;&#27809;&#26377;&#37325;&#22797;&#30340;&#35746;&#21333;ID&#12290;<\/p>\n<h3>2. &#20351;&#29992; <code>EXPLAIN<\/code> &#26597;&#30475;&#25191;&#34892;&#35745;&#21010;<\/h3>\n<p>&#36890;&#36807; <code>EXPLAIN<\/code> &#21629;&#20196;&#65292;&#25105;&#20204;&#21487;&#20197;&#26597;&#30475;SQL&#35821;&#21477;&#30340;&#25191;&#34892;&#35745;&#21010;&#65292;&#20174;&#32780;&#20102;&#35299;&#20854;&#25191;&#34892;&#36807;&#31243;&#21644;&#20248;&#21270;&#28857;&#12290;&#36825;&#23545;&#20110;&#29702;&#35299;SQL&#35821;&#21477;&#22914;&#20309;&#24037;&#20316;&#38750;&#24120;&#26377;&#24110;&#21161;&#12290;<\/p>\n<pre><code class=\"language-sql\">EXPLAIN ANALYZE SELECT * FROM table_name WHERE column1 NOT IN (SELECT column1 FROM other_table);<\/code><\/pre>\n<h3>3. &#20351;&#29992;&#23376;&#26597;&#35810;&#36827;&#34892;&#24038;&#22806;&#32852;&#25509;<\/h3>\n<p>&#23545;&#20110;&#37027;&#20123;&#38656;&#35201;&#32771;&#34385;&#20854;&#20182;&#34920;&#25968;&#25454;&#30340;&#24773;&#20917;&#65292;&#21487;&#20197;&#20351;&#29992;&#23376;&#26597;&#35810;&#26469;&#33719;&#21462;&#36825;&#20123;&#25968;&#25454;&#65292;&#28982;&#21518;&#20877;&#19982;&#21407;&#22987;&#34920;&#36827;&#34892;&#24038;&#22806;&#32852;&#25509;&#12290;&#36825;&#31181;&#26041;&#27861;&#36866;&#29992;&#20110;&#38656;&#35201;&#39069;&#22806;&#20449;&#24687;&#30340;&#22330;&#26223;&#12290;<\/p>\n<pre><code class=\"language-sql\">SELECT a.* \nFROM table_name a\nLEFT JOIN (\n    SELECT *\n    FROM table_name b\n    LEFT JOIN other_table c ON a.column1 = c.column1\n) b ON a.id = b.id\nWHERE b.id IS NULL;<\/code><\/pre>\n<h3>4. &#20351;&#29992; <code>CASE<\/code> &#23376;&#21477;<\/h3>\n<p>&#24403;&#28041;&#21450;&#21040;&#22810;&#20010;&#26465;&#20214;&#26102;&#65292;&#21487;&#20197;&#20351;&#29992; <code>CASE<\/code> &#23376;&#21477;&#26469;&#31616;&#21270;&#26597;&#35810;&#36923;&#36753;&#12290;<\/p>\n<pre><code class=\"language-sql\">SELECT column1, COUNT(*) AS count\nFROM table_name\nGROUP BY column1\nHAVING CASE WHEN column1 IN ('condition1', 'condition2') THEN 1 ELSE 0 END = 1;<\/code><\/pre>\n<h3>5. &#20351;&#29992; <code>NOT EXISTS<\/code> &#23376;&#26597;&#35810;<\/h3>\n<p>&#24403;&#38656;&#35201;&#36991;&#20813;&#21253;&#21547;&#26576;&#20010;&#29305;&#23450;&#20540;&#26102;&#65292;&#21487;&#20197;&#20351;&#29992; <code>NOT EXISTS<\/code> &#23376;&#26597;&#35810;&#12290;<\/p>\n<pre><code class=\"language-sql\">SELECT column1\nFROM table_name\nWHERE column1 NOT IN (\n    SELECT column1\n    FROM table_name\n    WHERE column1 IN ('value')\n);<\/code><\/pre>\n<p>&#36825;&#20123;&#26041;&#27861;&#21487;&#20197;&#26681;&#25454;&#20855;&#20307;&#30340;&#38656;&#27714;&#36873;&#25321;&#21512;&#36866;&#30340;&#26041;&#24335;&#26469;&#28385;&#36275;&#38656;&#27714;&#12290;&#35760;&#20303;&#65292;&#36873;&#25321;&#21738;&#31181;&#26041;&#27861;&#21462;&#20915;&#20110;&#24744;&#30340;&#19994;&#21153;&#38656;&#27714;&#21644;&#25968;&#25454;&#32467;&#26500;&#12290;<\/p>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Bug&#32534;&#35793;&#29422; Eloquent &#26159; Laravel &#26694;&#26550;&#20013;&#30340;&#19968;&#20010;&#38750;&#24120;&#24378;&#22823;&#19988;&#28789;&#27963;&#038;#..<\/p>\n","protected":false},"author":1,"featured_media":0,"menu_order":0,"template":"","meta":{"_acf_changed":false},"tags":[],"my1js2nav":[44],"tuisongtax":[],"class_list":["post-990","my1js","type-my1js","status-publish","hentry","my1js2nav-laravel"],"acf":{"qian_art_seotitle":"","qian_art_seotitle_source":{"label":"SEO\u6807\u9898","type":"text","formatted_value":""},"qian_art_seokws":"","qian_art_seokws_source":{"label":"SEO\u5173\u952e\u8bcd","type":"text","formatted_value":""},"qian_art_stzhong":"","qian_art_stzhong_source":{"label":"\u4e2d | \u77ed\u6807\u9898","type":"text","formatted_value":""}},"_links":{"self":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js\/990","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js"}],"about":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/types\/my1js"}],"author":[{"embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/users\/1"}],"wp:attachment":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/media?parent=990"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tags?post=990"},{"taxonomy":"my1js2nav","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js2nav?post=990"},{"taxonomy":"tuisongtax","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tuisongtax?post=990"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}