假设我有一个表单查询:
SELECT a, b, c, d 
FROM table1 
WHERE a IN (
  SELECT x 
  FROM table2 
  WHERE some_condition);
现在查询IN可以返回大量记录。假设这a是主键,那么使用索引是编写此类查询的最佳方式吗?  
还是循环遍历子查询返回的每条记录更为理想?
对我来说,很明显,当我做 awhere a = X时,我只是做了一个索引(树)遍历。
但我不确定IN(尤其是在庞大的数据集上)如何遍历/利用索引。