如何用多个条件更新数据库?
我的表名是工作
+----+-----+
| id | num |
+----+-----+
| 1 | 56 |
+----+-----+
| 2 | 44 |
+----+-----+
| 3 | 85 |
+----+-----+
如果输入值为id=1,num=17
该表应按如下方式更新
+----+-----+
| id | num |
+----+-----+
| 1 | 17 |
+----+-----+
| 2 | 44 |
+----+-----+
| 3 | 85 |
+----+-----+
或者如果值是id=4,num=56
更新后的表应如下所示
+----+-----+
| id | num |
+----+-----+
| 1 | 17 |
+----+-----+
| 2 | 44 |
+----+-----+
| 3 | 85 |
+----+-----+
| 4 | 56 |
+----+-----+
laravel中是否有Eloquent来更新表,如果没有,请给予我一个解决方案
$update=DB::table('work')
->updateOrInsert(['id'=>$request->MasterId,'Agent_num' => '$request->num',],['id' =>$request->MasterId, 'Agent_num'=>$request->$request->num]);
3条答案
按热度按时间h4cxqtbf1#
是的,你可以使用雄辩的查询来做到这一点。
下面是一个示例:
$your_object->where('id','id_value')->where('num','num_value')->update(['num' => value_to_update]);
请从下一次至少提供一些代码,你已经尝试,以便我们可以提供一个更好的解决方案,如果需要的。
yzuktlbb2#
让我们取一个用户表,其id为1,模型名为User,并且您希望更新他/她的信息,如用户id为4的号码/电话号码,可以如下所示
在你的例子中,你可以把你的模态名放在User,id的值放在4,列名放在phone_number,你想更新的值放在923069096975。
这是一个简单的解决你的问题
dldeef673#
这个问题有一个非常简单的答案。
基本上4和56也可以存储在变量中。上面的查询就像一个参考。假设我们把它赋值给如下的变量
这是一个非常简单的答案。
如果您必须更新多个行以针对多个ID进行更新,则只需将查询放入如下所示的循环中。
我们走吧