У меня следующие LARAVEL собственные отношения на модели пользователя:
public function matchesSet(){
return $this->belongsToMany(self::class, 'matches', 'user_id', 'match_id')->withPivot('confirmed');
}
Затем я запускаю:
User::first()->matchesSet->where('pivot.confirmed', true)->where('name','LIKE', 'John')->count()
или
User::first()->matchesSet->where('pivot.confirmed', true)->where('name','John')->count()
и Я получаю ожидаемый результат: «1» в этом случае.
НО, если я добавлю% к запросу LIKE, в любом из следующих вариантов:
User::first()->matchesSet->where('pivot.confirmed', true)->where('name','LIKE', '%John%')->count()
User::first()->matchesSet->where('pivot.confirmed', true)->where('name','LIKE', '%{John}%')->count()
User::first()->matchesSet->where('pivot.confirmed', true)->where('name','LIKE', "%John%")->count()
User::first()->matchesSet->where('pivot.confirmed', true)->where('name','LIKE', "%{John}%")->count()
тогда я получаю неправильный результат во всех случаях: "0".
Что не так с моими запросами LIKE?
Спасибо!