$sql = "select * from dataA LEFT JOIN dataB (dataA.name = dataB.nama) where dataA.id = $id";
1、如果想办法减少dataA和dataB的非必要字段(比如原来AB表分别有15和25个字段,AB都有100万+的数据,删除非必要字段或者复制必要字段到新表后,A可以减少30%的字段,B可以减少50%的字段),上述查询是不是会快很多呢?
2、如果还想再快一点,AB表内又该如何怎么创建各自的索引呢?
$sql = "select * from dataA LEFT JOIN dataB (dataA.name = dataB.nama) where dataA.id = $id";
1、如果想办法减少dataA和dataB的非必要字段(比如原来AB表分别有15和25个字段,AB都有100万+的数据,删除非必要字段或者复制必要字段到新表后,A可以减少30%的字段,B可以减少50%的字段),上述查询是不是会快很多呢?
2、如果还想再快一点,AB表内又该如何怎么创建各自的索引呢?
会快一点,因为left join是从a表中取每一个值,然后与b表从上到下依次匹配,然后把匹配到的值进行返回
如果想更快的话,可以考虑加上索引index