union本来就很慢。它要去重(尽管可有数据并不重,但它要准备)。你自己看查询计划就知道了。 

解决方案 »

  1.   

    如果數據沒重復的,用
    union all
    應該就快了
      

  2.   

    本人新手上路,虽然没有分数散给各位,却蒙各位无私回答,在此一并谢过。我自己想了一个办法,解决了,但是我并不知道真正的原因。
    解决方法如下:
    我发现同一个数据库中的其他表格用这种查询方法不会有如此差异。所以,我把这个表a备份出来,然后删除a,再重新导入a就解决了。我也不知道为什么,很怪异,以前一直好好的。我又测试了下,如果把这个表格导出到另外一个数据库(同一服务器),也可以解决这个问题。
    感谢关注,结贴。