猿问

Laravel whereNotIn 加上 whereIn 不等于总数

这怎么可能,whereNotIn()再加上whereIn()不等于总数?


运行这个:


$updatedBreeds = [

    86,

    113,

    // etc ....

];


DB::enableQueryLog();


dump(Breed::count());

dump(Breed::whereIn('id', $updatedBreeds)->count());

dump(Breed::whereNotIn('id', $updatedBreeds)->count());


dd(DB::getQueryLog());

返回这个:


159

39

0


我在这里错过了什么吗?该whereNotIn()调用应返回 120 个结果。


慕运维8079593
浏览 435回答 1
1回答

ibeautiful

显然,数组中的值之一是null。奇怪的是,这导致了这种行为。这是一个转储$updatedBreeds:[  0 => 86  1 => 113- 2 => null // When I removed this value, the whereNotIn() worked  2 => 44  3 => 8  4 => 54  5 => 54  // ...]
随时随地看视频慕课网APP
我要回答