如何解决是否会根据源表中捕获的最新日期自动查看更新?
假设我有一个表A,其中存储着带有日期列的记录,这些列的值分别为2020年7月,2020年8月和2020年9月 我创建视图B来捕获表A中的列,并且只包括最新的日期记录例如
create view B as
select * from A
where A.date = (select max(date)
from A);
如果下个月我的表A还包含日期为Oct2020的日期,那么视图B将自动仅包含记录Oct2020而不是下次的Sept2020吗?
解决方法
视图不会更新(嗯,让我们将物化视图排除在外)
标准视图是一个查询,当您引用它时会替换为另一个查询。什么都没有存储,因此什么也没有“更新”。但是,查询视图时,您总是会在基础表中看到最新数据。
如果要“冻结”数据,则可以创建表而不是视图。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。