1 个函数模型 Laravel 中的 2 个序列查询更新

Posted

技术标签:

【中文标题】1 个函数模型 Laravel 中的 2 个序列查询更新【英文标题】:2 sequence query update in 1 function Model Laravel 【发布时间】:2018-09-27 06:32:17 【问题描述】:

我有这个查询更新,需要 2 个序列才能完成工作。是这样的:

型号:

$result = DB::statement( DB::raw("SET @a:=0;") );
$numbering = DB::update(DB::raw(UPDATE table SET number:= @a+1, table_number = number+1 ));

return $numbering;

如果我执行了该函数,则只有 number 列填充了值 @a+1 ,但 table_number 列仍为空白。我必须在控制器中运行该函数两次才能使 table_number 列填充值 number+1

【问题讨论】:

【参考方案1】:

第一次更新时数字列尚未设置,请使用

UPDATE table SET number:= @a+1, table_number = @a+2

【讨论】:

值不固定,我想让table_number 的值可以是数字列中的任何值。不是 +2 只要数字列尚未设置,您就无法使用它的未设置值进行更新,但是您可以使用要用于设置它的值 我要问的是有没有办法在一个 laravel 模型函数中进行 2 查询,而不是在 laravel 控制器中运行 2 方法

以上是关于1 个函数模型 Laravel 中的 2 个序列查询更新的主要内容,如果未能解决你的问题,请参考以下文章

如何在 laravel 中获取所有模型/迁移名称并添加单个新列

laravel 怎么抓去错误日志

Laravel:在 2 个模型之间有 2 个数据透视表是可能的吗?

使用 Keras 评估滑动窗口中的函数

如何在laravel中的子查询中求和

同一模型 Laravel 上的 2 个查询