我在表(1)中有一列数据,我必须检查数百(或数千)个其他表中的数据列。
将两个表交叉的mysql查询,或者将表(1)中的数据转换为数组,然后将其他数据列设置为数组并交叉,会更快吗?
这是MySQL和PHP5.2。
答案 0 :(得分:2)
如果你在一个查询中执行它肯定会更快。让你的RDBMS完成他的工作,尝试尽可能少地使用PHP!
答案 1 :(得分:2)
除了将数据加载到PHP中的内存命中之外,您应该考虑将数据从MySQL传输出来以便在执行交集之前将其移动到PHP中。如果PHP和MySQL不在同一个盒子上,那就需要考虑性能差异。
数据库针对此类操作进行了优化 - 在MySQL中执行查询还可以最大限度地减少传输到PHP的数据量。