使用 Laravel Eloquent ORM 删除超过 30 天的行
Delete Rows Older than 30 Days Using Laravel Eloquent ORM
我正在尝试从我的数据库 table 中删除超过 30 天的记录。我没有执行代码,因为我想检查我是否做对了。
App\MyTable::whereDate( 'created_at', '<=', now()->subDays( 30 ) )->delete();
这是从 table 中删除超过 30 天的行的正确方法吗?此外,如果它发现零个记录超过 30 天会发生什么,它会抛出异常错误还是只是 运行 正常?
- 你打错了。尝试
MyTable::whereDate( 'created_at', '<=', now()->subDays(30))->delete();
- 它将运行优雅地
试试这个 -
$from= Carbon::now()->subDays(30)->toDateString();
$current = Carbon::now()->toDateString();
ModelName::whereBetween('created_at', array($diff,$current))
->delete();
希望这能完美运行!也请告诉我它是否有效!
我正在尝试从我的数据库 table 中删除超过 30 天的记录。我没有执行代码,因为我想检查我是否做对了。
App\MyTable::whereDate( 'created_at', '<=', now()->subDays( 30 ) )->delete();
这是从 table 中删除超过 30 天的行的正确方法吗?此外,如果它发现零个记录超过 30 天会发生什么,它会抛出异常错误还是只是 运行 正常?
- 你打错了。尝试
MyTable::whereDate( 'created_at', '<=', now()->subDays(30))->delete();
- 它将运行优雅地
试试这个 -
$from= Carbon::now()->subDays(30)->toDateString();
$current = Carbon::now()->toDateString();
ModelName::whereBetween('created_at', array($diff,$current))
->delete();
希望这能完美运行!也请告诉我它是否有效!