Veo que esta pregunta es un poco vieja, pero la encontré buscando una respuesta. Aunque no tuve éxito con las respuestas aquí, creo que esto podría deberse a que estoy en PHP 7.2 y Laravel 5.7. o posible porque solo estaba jugando con algunos datos en la CLI usando Laravel Tinker.
Tengo algunas cosas que probé que funcionaron para mí y otras que no lo hicieron, espero que ayuden a otros.
No tuve éxito al ejecutar:
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(); // []
Todo lo anterior me devolvió una matriz vacía
Sin embargo, tuve éxito al ejecutar:
DB::table('my_models')->whereNotNull('deleted_by')->get()->all(); // [ ... ]
Esto devolvió todos los resultados en una matriz como esperaba. Nota: puede soltar all()
y recuperar Illuminate \ Database \ Eloquent \ Collection en lugar de una matriz si lo prefiere.
!=
lugar de NO ES.