首页 > 其他分享 >分页查询处理上百万数据 更新

分页查询处理上百万数据 更新

时间:2023-05-04 11:33:45浏览次数:28  
标签:rt 上百万 分页 route 查询处理 tr limit region name

$count = Route::find()->where(['ro_visible'=>1])->count();//统计数据表数量
$limit = 100;
$pagecount = ceil($count/$limit); // 计算数据表的 页数

//事务执行
$tr = Yii::$app->db->beginTransaction();
try {
for ($page = 1; $page <= $pagecount; $page++) {
$offset = ($page - 1) * $limit;
$routes = Route::find()->where(['ro_visible'=>1])->limit($limit)->offset($offset)->all();//分页查询
foreach ($routes as $route) {
$rt_name=RouteType::find()->select('rt_name')->where(['rt_id'=>$route['rt_id']])->one();
        //处理分页查询出来的数据 及逻辑更新
$route->ro_name = $route['start_region_name'].$route['child_start_region_name'].'-'.$route['stop_region_name'].$route['child_stop_region_name'].'-'.$rt_name['rt_name'];
$route->save();
}

}

$tr->commit();

$this->message('执行成功');
} catch (\Exception $exception) {
$tr->rollBack();
$this->message($exception->getMessage());
}

标签:rt,上百万,分页,route,查询处理,tr,limit,region,name
From: https://www.cnblogs.com/cuishilei/p/17370608.html

相关文章

  • 第四章 存储器管理 4.7 请求分页存储管理方式
    一、请求分页中的硬件支持  1.页表机制    ①状态位D:用于说明该页是否已调入内存,供程序访问时参考    ②访问位A:用于记录本页在一段时间内被访问的次数,或最近已有多长时间未被访问,提供给置换算法选择换出页面时参考    ③修改位M:用于表示该页在......
  • 基础-SQL-DQL-分页查询
    分页操作在业务系统开发时,也是非常常见的一个功能,我们在网站中看到的各种各样的分页条,后台都需要借助于数据库的分页操作。SELECT字段列表FROM表名LIMIT起始索引,查询记录数;注意事项:•起始索引从0开始,起始索引=(查询页码-1)*每页显示记录数。•分页查询是数据......
  • Android提高第八篇之SQLite分页读取
    Android包含了常用于嵌入式系统的SQLite,免去了开发者自己移植安装的功夫。SQLite支持多数SQL92标准,很多常用的SQL命令都能在SQLite上面使用,除此之外Android还提供了一系列自定义的方法去简化对SQLite数据库的操作。不过有跨平台需求的程序就建议使用标准的SQL语句,毕竟这样容易在......
  • Android提高第九篇之GridView和SQLite实现分页表格
    上次讲的Android上的SQLite分页读取,只用文本框显示数据而已,这次就讲得更加深入些,实现并封装一个SQL分页表格控件,不仅支持分页还是以表格的形式展示数据。先来看看本文程序运行的动画:这个SQL分页表格控件主要分为“表格区”和“分页栏”这两部分,这两部分都是基于GridView实现的。......
  • 【整理】CSS3知识点4-分页
    分页样式http://www.runoob.com/css3/css3-pagination.html1、=======================================================CSS分页实例简单分页如果你的网站有很多个页面,你就需要使用分页来为每个页面做导航。以下实例演示了如何使用HTML和CSS来......
  • Django4全栈进阶之路23 项目实战(报修类型表):应用程序命名空间app_name和分页组件pagina
    1、应用程序命名空间app_namefromdjango.urlsimportpathfrom.importviewsfrom.viewsimportRepairDetailViewapp_name='repair'urlpatterns=[path('repair_types/',views.RepairTypeListView.as_view(),name='repair_type_list�......
  • layui学习5(日期与时间选择、分页)
    1.日期与时间选择1.1<divclass="layui-inline"><!--注意:这一层元素并不是必须的--><inputtype="text"class="layui-input"id="test1"placeholder="默认选择题"></div><divclass=&qu......
  • Vue2实现部分页面使用rem布局
    1.计算rem值的比例,这里是1920的设计图;setRem(){/***@file:index.vue*@method:setRemPc*@param:*@return:*@description:计算rem大小*@date:*/varwhdef=100/1920;//表示1920的设计图,使用100PX的默认值varbodyWidth=document.body.cli......
  • springboot分页插件的问题
    1:maven依赖的问题此类原因是与pom.xml文件中引入的分页依赖有关,由于springboot本身集成pagerhelper的分页插件,只需要引入如下依赖即可<!--spring-bootmybatispagehelper--><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-st......
  • 内存分页
    publicstatic<T>PageResult<T>newPage(List<T>content,IntegerpageNum,Integerpages){inttotal=content.size();intoffset=(pageNum-1)*pages;if(offset>total){returnnewPageResult<T>(null,pag......