的MySQL选择多个表一次
问题描述:
如果我需要从多个完全不相关的表中的所有行,是不是更有效地运行单个SELECT
查询?
所以返回结果可能是这样的:
[{ table: "table1", id: 1 },
{ table: "table1", id: 2 },
{ table: "table2", code: 1 }]
或者它会是一样运行单独SELECT
查询每个表的有效率?
答
Select column1,column2
from table1,table2
where table1.id = table2.id
最好有一个查询来检索数据。另外,您可以使用连接从两个表中检索数据。
+0
这两个表是完全不相关的,具有不同的列(以及它们的不同数目)。 – James
使用'UNION':例如'SELECT ... UNION SELECT ..;' –
通常情况下,你不能从一个查询中的两个或多个任意表中返回所有行,除非它们能以有意义的方式组合在一起。从数据传输使用的角度来看,使用还是两个查询无关紧要,因为在这两种情况下都需要传输相同数量的记录。 –