首先在a.id,a.name,b.id上建索引,然后
select * from (select * from a where name="time") a,b where a.id=b.id

解决方案 »

  1.   

    ----1.建立索引  在a  ,b表上
    -----2 . select  *  把改成 你要出來的字段  ,如 select col1,col2 ,不要全列出來select * from a inner join b on a.id=b.id and a.name="time"  ---
    上面改成 
    select a.col1,b.col1,.. from a inner join b on a.id=b.id and a.name="time"
      

  2.   

    语法没有什么好改进的,在a.id,a.name,b.id上分别建立索引,sql会自动优化
      

  3.   

    索引按where后的面的条件来建,最后次序也与之相同,可以达到最优
      

  4.   

    把查询结果放到临时表中,还有,不要用select *  经过测试速度太慢。
      

  5.   

    知道怎么作了,
    select * from b,a where a.id=b.id and a.name="time"
    这样可以速度快好多,从原来的40s可以减少到8s