MySQL:1:N关系中哪一个更快?加入或两个查询?

MySQL:1:N关系中哪一个更快?加入或两个查询?,mysql,sql,Mysql,Sql,考虑两个由主表格id链接的表格: 我可以获取如下数据: SELECT `main_table`.* , `second_table`.* FROM `main_table` JOIN `second_table` ON (`main_table`.`main_table_id` = `second_table`.`main_table_id`) WHERE `main_table`.`main_table_id` = ? AND `second_table`.`main_table_id`

考虑两个由主表格id链接的表格:

我可以获取如下数据:

SELECT `main_table`.* , `second_table`.*
FROM `main_table` 
JOIN `second_table`
ON (`main_table`.`main_table_id` = `second_table`.`main_table_id`)
WHERE `main_table`.`main_table_id` = ?
AND `second_table`.`main_table_id` ?
或者,我可以使用两个查询执行相同的操作:

SELECT *
FROM `main_table`
WHERE `main_table_id` = ?
第二个问题是:

SELECT *
FROM `second_table`
WHERE `main_table_id` = ?
对我来说,唯一的区别是,在第一种情况下,我将一次获取所有数据,在第二种情况下,我将在两个不同的数组中获取数据


但我的疑问是:在服务器性能方面,哪一种方法是处理这种情况的最佳方法?

我唯一能想到的是,您将向数据库进行两次往返,而不是一次往返。有些奇怪的情况下会有显著的差异,但我怀疑这里的情况是否如此。

尽量减少服务器往返,一次获取所有数据,除非数据太大,并且会减慢站点加载时间。

简短回答,视情况而定。它确实取决于,但是——粗略地说——一次数据库访问要比2次短。