Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用Elounce更新批量数据_Php_Laravel_Laravel 5_Eloquent_Laravel 5.2 - Fatal编程技术网

Php 使用Elounce更新批量数据

Php 使用Elounce更新批量数据,php,laravel,laravel-5,eloquent,laravel-5.2,Php,Laravel,Laravel 5,Eloquent,Laravel 5.2,如何在+1周的时间内批量更新多条评论记录的发布日期?所需结果的图示: $interval=CarbonInterval::week();//间隔1周,需要符合以下查询 注释::其中('id','>',10)->更新('publish_date',…); 您可以使用DB::raw()在数据库中执行任意代码-请记住,它可能无法移植到其他DB引擎 在MySQL和其他支持日期添加功能的引擎中,以下操作应该可以完成: Comment::where('id','>',10)->更新(['publish\u

如何在+1周的时间内批量更新多条
评论
记录的发布日期?所需结果的图示:

$interval=CarbonInterval::week();//间隔1周,需要符合以下查询
注释::其中('id','>',10)->更新('publish_date',…);
您可以使用
DB::raw()
在数据库中执行任意代码-请记住,它可能无法移植到其他DB引擎

在MySQL
和其他支持日期添加功能的引擎中,以下操作应该可以完成:

Comment::where('id','>',10)->更新(['publish\u date'=>DB::raw('date\u ADD(“publish\u date”,间隔1周)]);
您可以使用
DB::raw()
在数据库中执行任意代码-请记住,它可能无法移植到其他DB引擎

在MySQL和其他支持日期添加功能的引擎中,以下操作应该可以完成:

Comment::where('id','>',10)->更新(['publish\u date'=>DB::raw('date\u ADD(“publish\u date”,间隔1周)]);

根据文档,您可以执行以下操作:

App\Models\Comment::where('id','>',10)->更新([
“发布日期”=>Carbon\Carbon::parse(DB::raw(“'publish\u date`)”)->addWeeks(1)
]);

据此:

用于基本更新的Laravel文档:

加减法的碳记录:


根据文档,您可以执行以下操作:

App\Models\Comment::where('id','>',10)->更新([
“发布日期”=>Carbon\Carbon::parse(DB::raw(“'publish\u date`)”)->addWeeks(1)
]);

据此:

用于基本更新的Laravel文档:

加减法的碳记录:


谢谢您的回答,但是有没有办法通过使用本机的eloquent来做到这一点?如果您想用一个查询更新多行,就没有办法了。生成器中有增量方法,但它的工作原理是向给定列添加一个整数,该整数对包含日期时间值的列不起作用。感谢您的回答,但是没有一种方法可以通过本机使用eloquent来实现这一点吗?如果您想用一个查询更新多行,则不能。生成器中有增量方法,但它的工作原理是向给定列添加一个整数,这对包含日期时间值的列不起作用谢谢您的回答。这种方法的问题是,您没有在现有日期上添加+1周,而只是用从现在开始的+1周覆盖它。对不起,我没有注意到这一点。我的答案已更新。这种方法效率低下,因为它检索每个记录的
publish\u date
,不必要地加载数据库谢谢您的回答。这种方法的问题是,您没有在现有日期上添加+1周,而只是用从现在开始的+1周覆盖它。对不起,我没有注意到这一点。我的答案已更新。这种方法效率低下,因为它检索每个记录的
publish\u date
,不必要地加载数据库