Laravel 8 更新选择计数 200 万行

问题描述

我想用子查询 select count 另一个表更新 200 万行。

这是我在控制器中的代码

//Position 1
$c_dist = DB::table('tm_dashboard as a')->update([
            'position' => DB::raw('(SELECT COUNT(b.id) AS Total FROM tm_employees as b WHERE b.id_position="2" AND b.kd_dist=a.kd_dist LIMIT 1)')
        ]);
//Position 2
$c_prov = DB::table('tm_dashboard as a')->update([
            'position' => DB::raw('(SELECT COUNT(b.id) AS Total FROM tm_employees as b WHERE b.id_position="2" AND b.kd_prov=a.kd_prov LIMIT 1)')
        ]);

tm_dashboard 有 20000 条数据。

tm_employees 有 200 万条数据。

每次我处理这个时,加载都需要很长时间。如果我停止该进程,则无法访问 tm_dashboard。

有没有办法更新大数据?

请帮帮我

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...