Сопоставление SQL с запросом, дающее непредсказуемые результаты - PullRequest
0 голосов
/ 11 июня 2018

Я пытаюсь запустить следующий поисковый запрос в моей базе данных:

User::selectRaw("*, MATCH(first_name, last_name)AGAINST(?)", [$search_string])
            ->whereRaw("MATCH(first_name, last_name)AGAINST(? IN BOOLEAN MODE)", [$search_string])
            ->limit(10)
            ->get();

Это работает нормально пару раз (иногда только один раз), а затем я получаю ошибку InvalidArgumentException: Inf and NaN cannot be JSON encoded in file Этоошибка временно разрешается при добавлении нового пользователя в базу данных, но быстро возвращается после некоторых попыток выполнения запроса.Я думаю, что это связано со значением, возвращаемым запросом.Это значение иногда inf.Почему этот запрос ведет себя таким непредсказуемым образом?

1 Ответ

0 голосов
/ 11 июня 2018

Я исправил свою проблему, заменив оператор selectRaw на необработанный оператор, например:

User::raw("SELECT * FROM MATCH(first_name, last_name)AGAINST(?)", [$search_string])
            ->whereRaw("MATCH(first_name, last_name)AGAINST(? IN BOOLEAN MODE)", [$search_string])
            ->limit(10)         
            ->get();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...