
视图中的sql执行不慢,但查询整个视图慢. 30
如视图CREATEORREPLACEVIEWxxxxxASSELECTA1D1,A2D2,A3D3FROMAUNIONALLB1D1,B2D2,B3D3FROMBUNIO...
如视图CREATE OR REPLACE VIEW xxxxx AS
SELECT A1 D1,A2 D2,A3 D3
FROM A
UNION ALL
B1 D1,B2 D2,B3 D3
FROM B
UNION ALL
C1 D1,C2 D2,C3 D3
FROM C;
SELECT A1 D1,A2 D2,A3 D3
FROM A
UNION ALL
B1 D1,B2 D2,B3 D3
FROM B
UNION ALL
C1 D1,C2 D2,C3 D3
FROM C; 执行就很快,表都创建了索引 展开
SELECT A1 D1,A2 D2,A3 D3
FROM A
UNION ALL
B1 D1,B2 D2,B3 D3
FROM B
UNION ALL
C1 D1,C2 D2,C3 D3
FROM C;
SELECT A1 D1,A2 D2,A3 D3
FROM A
UNION ALL
B1 D1,B2 D2,B3 D3
FROM B
UNION ALL
C1 D1,C2 D2,C3 D3
FROM C; 执行就很快,表都创建了索引 展开
1个回答
展开全部
很正常吗,查询视图时执行了两遍检索,而且生成的视图失去了索引,检索会更慢,另外你创建这样的视图已经失去了视图的意义(忽略你写法上的错误)
追问
有没有什么方法消除
追答
直接检索就行了,为啥非要用这样的视图?如果非要用(比如非安全用户访问数据库),如果嫌慢,可以使用实体化视图,实体化视图可以自动定时更新,对用户来说就像查询一张表一样快
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |