首页 > 其他 > 详细

处理查询大数据的办法

时间:2021-03-06 12:52:22      阅读:19      评论:0      收藏:0      [点我收藏+]
1.第一种思路,查询分页,循环查询
public function run($itemId = ‘‘)
    {
        //查询出所有需要待更新的数据,分页处理
        $page = 1;
        $listingUpdate = new LazadaOnlineListingUpdate();
        $count = $listingUpdate->getCountByRawSql($this->type, $itemId);
        $totalPages = ceil($count / $this->limit);
        do {
            $offset = ($page - 1) * $this->limit;
            $data = $listingUpdate->getListByRawSql($this->type, $this->limit, $offset, $itemId);
            if (!empty($data)) {
                foreach ($data as $row) {
                    $this->updateProductStatus($row);
                }
            }
            $page++;
        } while ($page <= $totalPages);
    }

2.分块查询
查询的数据进行切割分块处理
foreach (collect($leafData)->chunk(100) as $child_collect) {
$object->updateBatch($child_collect->toArray());
}

 

处理查询大数据的办法

原文:https://www.cnblogs.com/kevin-yang123/p/14490016.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!