我多年来一直面临着一个问题。我有一个包含 500 000 行的大型数据集,我想将它们打印到 CSV 中。
在第一种情况下,我需要根据行上的列进行计算以确定“结果”列。我已经找到了解决方案。我正在使用“fetch”并逐行进行计算并逐渐打印到我的csv
简化示例:
|---------------------------------------|
| ID | type | var1 | var2 | var1 * var2 |
|---------------------------------------|
| 0 | car | 2 | 5 | 10 |
| 1 | moto | 4 | 8 | 32 |
| 2 | car | 0 | 2 | 2 |
|---------------------------------------|
在第二种情况下,我需要从 500k 行中打印涉及这 500k 行中大量行的计算(最多可以是 10k+ 行的组)。
简化示例:
|-----------------------------|
| type | sum var1 * var2 |
|-----------------------------|
| car | 87677670 |
| moto | 3232435 |
|-----------------------------|
但是,计算比乘法之和要复杂得多。翻译:它们不能直接用 SQL 完成。
我的问题是,如果我将所有汽车从数据库转移到我的 php 应用程序中进行循环,我的 php memory_limit 将达到。我怎样才能像第一个例子一样逐渐做到这一点?
不是:我使用的是 Oracle 12c 和 PHP 5.3.5
不负相思意