高手请进:关于视图[内包含派生表]索引的问题!
视图比较复杂,自定义了很多的函数,函数表,当然了,包含有派生表的问题[另外其它也搞了很多的派生表]!!没有办法,这是公司要我做的任务,任务是加快对视图的查询速度,我在在试图里建立不了索引![表5--8万记录,一般5万]
问题1:如何在一个包含有派生表的视图里加索引??难道死路一条??
问题2:如果不可以在一个带有派生表的试图里加索引,那么该怎样才可以加快试图的查询能力??
------------------------------------------------------------------
试图 SQL(本人知道下面的语句还要再修改才符合视图索引的语法要求)
select
。。。。。太长影响看问题,删除省烈
from
((select * from GetSpringboard() group by ID,Springboard)[A],
(select * from GetCHboard() group by ID,CHboard)[B]
where A.ID=B.ID)[A],
(select * from GetDestination() group by ID,Destination)[B],
(select * from GetRDate())[C],
(select * from GetTDate())[D],
(* from provide)[E],
(select * from GetPrice())[G]
where A.ID = B.ID
and A.ID = C.ID
and A.ID = D.ID
and A.ID = E.ID
and A.ID = G.ID
--------------------------------------------------------------------
问题3:(select * from GetRDate())[C],这应该是属于派生表了吧?
问题4:((select * from GetSpringboard() group by ID,Springboard)[A],
(select * from GetCHboard() group by ID,CHboard)[B]
where A.ID=B.ID)[A],这个肯定是派生表了吧??
问题1:如何在一个包含有派生表的视图里加索引??难道死路一条??
问题2:如果不可以在一个带有派生表的试图里加索引,那么该怎样才可以加快试图的查询能力??
------------------------------------------------------------------
试图 SQL(本人知道下面的语句还要再修改才符合视图索引的语法要求)
select
。。。。。太长影响看问题,删除省烈
from
((select * from GetSpringboard() group by ID,Springboard)[A],
(select * from GetCHboard() group by ID,CHboard)[B]
where A.ID=B.ID)[A],
(select * from GetDestination() group by ID,Destination)[B],
(select * from GetRDate())[C],
(select * from GetTDate())[D],
(* from provide)[E],
(select * from GetPrice())[G]
where A.ID = B.ID
and A.ID = C.ID
and A.ID = D.ID
and A.ID = E.ID
and A.ID = G.ID
--------------------------------------------------------------------
问题3:(select * from GetRDate())[C],这应该是属于派生表了吧?
问题4:((select * from GetSpringboard() group by ID,Springboard)[A],
(select * from GetCHboard() group by ID,CHboard)[B]
where A.ID=B.ID)[A],这个肯定是派生表了吧??
...全文
相关推荐
Mysql临时表和派生表
mysql高级操作
mysql派生表(Derived Table)简单用法实例解析
主要介绍了mysql派生表(Derived Table)简单用法,结合实例形式分析了mysql派生表的原理、简单使用方法及操作注意事项,需要的朋友可以参考下
数据库设计包括表、视图、触发器、存储过程、序列、索引等.doc
1.数据库对象设计 主要对象包括表、视图、触发器、存储过程、序列、索引等
SQL数据库中用创建好的视图修改表数据
只要满足下列条件,即可通过视图修改基础基表的数据: 1、任何修改(包括 UPDATE、INSERT 和 DELETE 语句)都只能引用一个基表的列。 2、视图中被修改的列必须直接引用表列中的基础数据。不能通过任何其他方式对这些列进行派生,如通过以下方式: 1)聚合函数:AVG、COUNT、SUM、MIN、MAX、GROUPING、STDEV、STDEVP、VAR 和 VARP。 2)计算。不能从使用其他列的表达式中计算该列。使用集合运算符 UNION、UNION ALL、CROSSJOIN、EXCEPT 和 INTERSECT 形成的列将计入计算结果,且不可更新。
【10】【案例】数据查询——集合查询、基于派生表的查询、视图.sql
【10】【案例】数据查询——集合查询、基于派生表的查询、视图.sql


疑难问题
