php数据库两个关联大表的大数组分页处理,防止内存溢出
$ret = self::$db->select($tables, $fields, $where, $bind);
if (!empty($ret)) {
$retIds = array();
$ids = array();
while (!empty($ret)) {
$_sub = array_splice($ret, 0, 10000); //每次取出10000个
foreach ($_sub as $v) {
array_push($retIds, $v['pt_AccountKey']);
}
unset($_sub);
/*过滤非快速登陆类型*/
$place_holders = implode(',', array_fill(0, count($retIds), '?'));
array_unshift($retIds, 'autoregs');
$PT_Account = self::$db->select('PT_Account', 'pt_AccountKey', 'pt_RegisteSource=? AND pt_AccountKey IN (' . $place_holders . ')', $retIds);
if (!empty($PT_Account)) {
array_push($ids, $v['pt_AccountKey']);
}
}
unset($ret);
if (!empty($ids)) {
$num = count($ids);
$_sub = array_splice($ids, $get['start'], $get['limit']);
$place_holders = implode(',', array_fill(0, count($_sub), '?'));
$where = 'pt_AccountKey IN (' . $place_holders . ')';
$list = self::$db->select('PT_Account', 'pt_AccountID,pt_Password', $where, $_sub);
$grid = array();
$grid['rows'] = $list;
$grid['total'] = $num;
return $grid;
}
}
php数据库两个关联大表的大数组分页处理,防止内存溢出的更多相关文章
- Hive优化-大表join大表优化
Hive优化-大表join大表优化 5.大表join大表优化 如果Hive优化实战2中mapjoin中小表dim_seller很大呢?比如超过了1GB大小?这种就是大表join大表的问题.首先引入一个 ...
- 【Spark调优】大表join大表,少数key导致数据倾斜解决方案
[使用场景] 两个RDD进行join的时候,如果数据量都比较大,那么此时可以sample看下两个RDD中的key分布情况.如果出现数据倾斜,是因为其中某一个RDD中的少数几个key的数据量过大,而另一 ...
- 数据库之 MySQL --- 数据处理 之 表的约束与分页(七)
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 1.约束 :为了保证数据的一致性和完整性,SQL规范以约束的方式对表数据进行额外的条件限制 ...
- Hive中小表与大表关联(join)的性能分析【转】
Hive中小表与大表关联(join)的性能分析 [转自:http://blog.sina.com.cn/s/blog_6ff05a2c01016j7n.html] 经常看到一些Hive优化的建议中说当 ...
- 【Spark调优】小表join大表数据倾斜解决方案
[使用场景] 对RDD使用join类操作,或者是在Spark SQL中使用join语句时,而且join操作中的一个RDD或表的数据量比较小(例如几百MB或者1~2GB),比较适用此方案. [解决方案] ...
- 大数据开发实战:Hive优化实战3-大表join大表优化
5.大表join大表优化 如果Hive优化实战2中mapjoin中小表dim_seller很大呢?比如超过了1GB大小?这种就是大表join大表的问题.首先引入一个具体的问题场景,然后基于此介绍各自优 ...
- MySql 小表驱动大表
在了解之前要先了解对应语法 in 与 exist. IN: select * from A where A.id in (select B.id from B) in后的括号的表达式结果要求之输出一列 ...
- hive中与hbase外部表join时内存溢出(hive处理mapjoin的优化器机制)
与hbase外部表(wizad_mdm_main)进行join出现问题: CREATE TABLE wizad_mdm_dev_lmj_edition_result as select * from ...
- java 导出 excel 最佳实践,java 大文件 excel 避免OOM(内存溢出) excel 工具框架
产品需求 产品经理需要导出一个页面的所有的信息到 EXCEL 文件. 需求分析 对于 excel 导出,是一个很常见的需求. 最常见的解决方案就是使用 poi 直接同步导出一个 excel 文件. 客 ...
随机推荐
- 小甲鱼PE详解之区块表(节表)和区块(节)续(PE详解05)
这一讲我们结合实例来谈谈区块表的定义以及各个属性的含义. 首先,我们先用之前学过的一点知识在二进制文件中手动翻找区块表,这样做的好处是可以使你很快的对PE结构牢记于心.学来的东西就是能用的东西,不能用 ...
- Android 编程下的四大组件之服务(Service)
服务(Service) 是一种在后台运行,没有界面的组件,由其他组件调用开始.Android 中的服务和 Windows 中的服务是类似的东西,它运行于系统中不容易被用户发觉,可以使用它开发如监控之类 ...
- calendar 示例
package unit5; import java.text.DateFormatSymbols; public class MyMonth { private int month; private ...
- “无法加载一个或多个请求的类型。有关更多信息,请检索 LoaderExceptions 属性 “之解决
今天在学习插件系统设计的时候遇到一个问题:“System.Reflection.ReflectionTypeLoadException: 无法加载一个或多个请求的类型. 于是百度一下,很多内容都差不多 ...
- SU Demos-04Deconvolution-01FX
先看readme, 运行结果,
- POJ1061 青蛙的约会(线性同余方程)
线性同余方程$ ax \equiv b \pmod n$可以用扩展欧几里得算法求解. 这一题假设青蛙们跳t次后相遇,则可列方程: $$ Mt+X \equiv Nt+Y \pmod L$$ $$ (M ...
- 【BZOJ】1927: [Sdoi2010]星际竞速(费用流)
http://www.lydsy.com/JudgeOnline/problem.php?id=1927 题意:n个点的无向图.m条加权边.只能从编号小的到编号大的.可以瞬移,瞬移有时间.每个点只能访 ...
- OI分类
黑字:认识 红字:要学 未添加:要学 ├─模拟├─字符串│ ├─字符串基础│ ├─manacher│ ├─kmp│ ├─trie│ ├─ac自动机│ ├─后缀数组( ...
- C#开发MySQL数据库程序时需要注意的几点
一:引用MySQL使用基于Parameter方式代码,总是提示:“Column '列名'cannot be null”解决 MySQL使用基于Parameter方式代码,总是提示:“Column '列 ...
- hdu Proud Merchants
此题是一个背包的题目,刚开始我并没有作任何的排序工作,所以出来的结果总是错的,仔细想想也确实是不对的,因为q[i]会限制dp[i]的值的变化.虽然我知道要按照某个量进行排序,对原数据进行处理,但是实在 ...