关于mysql优化连表查询的问题

mysql中查询两张表中的数据,一张表的数据量大,一张数据量小,有一个id关联,但是这个id在两张表都不是主键,怎么
查才能速度快呢?sql大概在下面,数据a表10w条,b表几十条
select * from a a ,b b
where
a.c_id = b.c_id ORDER BY a.cid limit 1,20 大概要0.8秒,如果去掉排序只要3ms,试过用inner join ,但是有条件的情况下也很慢

1、加索引
2、避免用select * ,如果可以,就指定具体的使用字段,以便于用到索引

select * from a where a.c_id in (select c_id from b) order by c_id limit 1,20

同时对a表的c_id加索引,如果b的c_id数据量不大,应该是不需要的索引

select * from a where a.c_id in (select c_id from b) order by c_id limit 1,20

同时对a表的c_id加索引,如果b的c_id数据量不大,应该是不需要的索引