Ich sehe, dass diese Frage etwas alt ist, aber ich bin darauf gestoßen und habe nach einer Antwort gesucht. Obwohl ich mit den Antworten hier keinen Erfolg hatte, denke ich, dass dies daran liegen könnte, dass ich auf PHP 7.2 und Laravel 5.7 bin . oder möglich, weil ich nur mit Laravel Tinker mit einigen Daten auf der CLI herumgespielt habe.
Ich habe einige Dinge ausprobiert, die für mich funktioniert haben, und andere, von denen ich nicht hoffe, dass sie anderen helfen.
Ich hatte keinen Erfolg beim Laufen:
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(); // []
Alle oben genannten haben ein leeres Array für mich zurückgegeben
Ich hatte jedoch Erfolg beim Laufen:
DB::table('my_models')->whereNotNull('deleted_by')->get()->all(); // [ ... ]
Dies gab alle Ergebnisse in einem Array zurück, wie ich erwartet hatte. Hinweis: Sie können das Feld löschenall()
und eine Illuminate \ Database \ Eloquent \ Collection anstelle eines Arrays zurückerhalten, wenn Sie dies bevorzugen.
!=
anstelle von IS NOT zu verwenden.