视图的问题

dis10 2007-01-15 10:35:34
开始做项目的时候只考虑到实际数据,所以就建了一张表t_actual(年月,科目,交易),
后来又要加上预算的数据,因为不想再修改以前的代码,所以又加了张表t_budget,
两个表的结构是一样的,都是以[年月](int)为聚集索引.


后来的统计因为要涉及到这两张表,所以就想建个视图v_transaction做为一张表处理,
因为t_actual的数据量在百万条以上,所以希望视图上也能以[年月](int)做为聚集索引,这样的视图怎么建?或者有什么更好的办法处理这种问题?
...全文
133 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
rookie_one 2007-01-15
  • 打赏
  • 举报
回复
如果结构相同且之前的数据和后来的数据都可根据科目区分开的话,就可以
CREATE VIEW 视图名 AS

SELECT .... FROM 表1
UNION ALL
SELECT .... FROM 表2

如果之前和后来的数据放在一起会混淆的话
就在两个表分别增加一列标识列,比如之前的为1,之后的为0
然后再union all来建立视图
wwh999 2007-01-15
  • 打赏
  • 举报
回复
如果你上面说的两张表结构相同的话..
可使用:
CREATE VIEW 视图名 AS

SELECT .... FROM 表1
UNION ALL
SELECT .... FROM 表2

这种方式来建立视图,同时按我上贴中的说明来套。

wwh999 2007-01-15
  • 打赏
  • 举报
回复
在对视图创建聚集索引之前,该视图必须符合下列要求:

当执行 CREATE VIEW 语句时,ANSI_NULLS 和 QUOTED_IDENTIFIER 选项必须设置为 ON。OBJECTPROPERTY 函数通过 ExecIsAnsiNullsOn 或 ExecIsQuotedIdentOn 属性为视图报告此信息。


下面有篇文章,做过介绍的,我就不重复贴了,你自己看看:
http://community.csdn.net/Expert/TopicView3.asp?id=4996069
dis10 2007-01-15
  • 打赏
  • 举报
回复
?

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧