lazygc520 发表于 2012-12-28 14:00

用union all建立视图,查询时反应很慢

有5张表,将这5张表用union all连起来建立视图。然后用视图进行group by查询,发现结果很慢。

查询视图本身也很慢,查询花费 4.0932 秒。请问如何改善?

lazygc520 发表于 2012-12-28 14:04

EXPLAIN SELECT * FROM `barcode_all`
---------------------------------------------------------------------------------------------

id         select_type         table         type         possible_keys         key         key_len         ref         rows         Extra
1         PRIMARY         <derived2>         ALL         NULL         NULL         NULL         NULL         159036        
2         DERIVED         barcode_2d_temp         ALL         NULL         NULL         NULL         NULL         1        
3         UNION         barcode_2d         ALL         NULL         NULL         NULL         NULL         146931        
4         UNION         barcode_2d_n         ALL         NULL         NULL         NULL         NULL         1954        
5         UNION         barcode_2d_sep         ALL         NULL         NULL         NULL         NULL         429        
6         UNION         barcode_2d_sep_temp         ALL         NULL         NULL         NULL         NULL         1        
NULL         UNION RESULT         <union2,3,4,5,6>         ALL         NULL         NULL         NULL         NULL         NULL        

lazygc520 发表于 2012-12-28 14:43

已解决,加入where条件即可,再建立相对应视图。
页: [1]
查看完整版本: 用union all建立视图,查询时反应很慢