我有一个 sql 语句将数据插入到表中以进行存档,但我需要一个合并语句以按月运行,以使用旧表 (1) 中更改的任何数据更新新表 (2),现在应该是移入存档。
部分问题是从旧表中删除移动的数据。我的插入并没有这样做,但我需要将它放到从原始表中清除保存数据的位置。
是否有一条 sql 语句可以以这种方式将数据从一个表移到另一个表中?还是需要两步操作?
最初的声明根据年龄和其他一些相关因素移动数据。
插入是:
INSERT /*+ append */
INTO tab1
SELECT *
FROM tab2
WHERE (Postingdate < TO_DATE ('2001/07/01', 'yyyy/mm/dd')
OR jobname IS NULL)
AND STATUS <> '45';
所有帮助表示赞赏...
最佳答案
merge
通过在更新子句中添加删除语句,语句将让您在一个语句中完成此操作。见 Oracle Documentation on Merge .
关于sql - 将旧表中的数据合并到新表中以进行每月存档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8663451/