Я вижу, что этот вопрос немного стар, но я наткнулся на него в поисках ответа. Хотя у меня не было успеха с ответами здесь, я думаю, что это может быть, потому что я нахожусь на PHP 7.2 и Laravel 5.7. или возможно, потому что я просто играл с данными из CLI, используя Laravel Tinker.
У меня есть кое-какие вещи, которые я пробовал, которые сработали для меня, и другие, которые не помогли, надеюсь, помогут другим.
У меня не было успеха в беге:
MyModel::whereNotNull('deleted_by')->get()->all(); // []
MyModel::where('deleted_by', '<>', null)->get()->all(); // []
MyModel::where('deleted_by', '!=', null)->get()->all(); // []
MyModel::where('deleted_by', '<>', '', 'and')->get()->all(); // []
MyModel::where('deleted_by', '<>', null, 'and')->get()->all(); // []
MyModel::where('deleted_by', 'IS NOT', null)->get()->all(); // []
Все вышеперечисленное вернуло мне пустой массив
Я, однако, имел успех в беге:
DB::table('my_models')->whereNotNull('deleted_by')->get()->all(); // [ ... ]
Это вернуло все результаты в массиве, как я ожидал. Примечание: вы можете удалить all()
и вернуть Illuminate \ Database \ Eloquent \ Collection вместо массива, если хотите.
!=
вместо НЕ.