刷新SQL Server表
背景 我的数据库中有一个巨大的表(刷新SQL Server表,sql,sql-server,Sql,Sql Server,背景 我的数据库中有一个巨大的表(表a)。从中,我根据业务规则应用了一些过滤器。然后我将这些过滤器应用到另一个表中(表B) 因此,表B将始终包含来自A的数据,并且总是小得多表A包含500000个条目,表B包含3000个条目 两个表具有相同的结构 问题 巨大的表格(表格A)可以随时更新,恕不另行通知。因此,为了确保表B包含最新的业务数据,需要定期刷新。在这种情况下,我每周做一次 解决方案 我是通过设置一个简单的存储过程来实现这一点的,该存储过程执行以下操作: 截断表B 对表A应用过滤器,并将数据插
表a
)。从中,我根据业务规则应用了一些过滤器。然后我将这些过滤器应用到另一个表中(表B
)
因此,表B
将始终包含来自A的数据,并且总是小得多<代码>表A包含500000个条目,表B
包含3000个条目
两个表具有相同的结构
问题
巨大的表格(表格A
)可以随时更新,恕不另行通知。因此,为了确保表B
包含最新的业务数据,需要定期刷新。在这种情况下,我每周做一次
解决方案
我是通过设置一个简单的存储过程来实现这一点的,该存储过程执行以下操作:
表A
应用过滤器,并将数据插入表B
谢谢,不要在存储过程中这样做,而是创建一个视图。视图与表保持同步,随着表A中数据的更改,视图将自动更新。 以下是您可能想了解的一些详细信息
只需创建一个视图,而不是单独的表。@GordonLinoff-这个视图可以像表一样被查询吗?@GordonLinoff-此外,当原始表被更改时,视图是否会自动更新?两个问题:是。@OdaySalim,确保在大表上有索引,以便通过视图优化查询。