哪个会消耗更少的资源?子查询或使用编程语言的两个查询

时间:2015-10-07 07:19:22

标签: php mysql

这是Livi 我正在研究数据库太大的项目,我担心必须在那里进行数据库查询优化。 我正在研究数据库,它在表中有几十亿条记录,我正在快速搜索数据库服务器和网络服务器消耗的资源。 当时,我使用2个查询从

这样的表中选择数据
result1 = select data_id from table1 where id<1000

而不是使用PHP代码我获取数据而不是再次运行查询来获取数据,如

select * from table2 where data_id1<result1

我也可以将其用作子查询。

我怀疑哪种方法最适合我,因为我告诉它有非常大的数据库可以在GB中。

1 个答案:

答案 0 :(得分:2)

假设您的第一个查询产生m记录,那么您必须运行第二个查询m次。使用子查询也是如此 在资源消耗方面,我认为这两种方法没有什么不同,你要么把繁重的工作放在数据库或网络服务器上 在2个查询方法中:将过程数据的所有权重放在Web服务器上,在子查询方法中,所有权重都转到数据库服务器。
总之,2个查询~1个查询和1个子查询。决定由你决定在哪里加权(由于你庞大的数据库,它应该在我的意见中的网络服务器上) 问候,