gpt4 book ai didi

php - Laravel - 组合多个查询以使用单个查询更新两个表的数据

转载 作者:行者123 更新时间:2023-11-30 22:19:43 30 4
gpt4 key购买 nike

在我的一个 Laravel 项目中,我必须在同一函数范围内更新两个表的数据。在第一次查询时,我尝试使用以下查询更新表的数据 -

        DB::table('parameters')
->where($where)
->update($data);

在第二个和第三个查询中,我添加和减去另一个表的两列 -

DB::table('categories')
->where(['id' => $data['category_id']])
->increment('parameters');

DB::table('categories')
->where(['id' => $previous_category_id])
->decrement('parameters');

一切正常。但是,现在我想在一次查询执行中完成所有这些操作。

最佳答案

据我所知,一个查询无法做到这一点。

你基本上用 DB:table 做什么facade 正在运行 MySQL UPDATE 语句,例如: UPDATE <table_name> SET <field_name>=<value> WHERE condition

如您所见,UPDATE 查询恰好指向一个 表,而不是更多。因此,要更新多个表,您需要运行多个 UPDATE 查询。

关于php - Laravel - 组合多个查询以使用单个查询更新两个表的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36980381/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com