Oracle-用于将日期从一列复制到另一列的Update语句
在我的Oracle DB中,CustomerActivity表中有两个日期列;上次更新和上次添加。由于多年来的几次更改,应用程序使用了上次更新,但临时使用了上次添加的日期,在某些情况下,两个列都是随机的(听起来像是糟糕的开发/缺陷),现在它切换回上次更新的日期(疯狂,对吧?) 在任何情况下,我都希望仅当Last Added>Last Update时,才将上次添加的日期值复制到Last Update列中。在此之后,我将从表中删除最后添加的列(永久修复) 如何为此编写更新语句?正如您明确指出的,“只有在Last Added>Last Update的情况下,我才想将上次添加的日期值复制到Last Update列中”。由于SQL是一种声明性语言,您只需将其转换为SQL: 我想将上次添加的日期值复制到上次更新的日期列中 仅当上次添加>上次更新 现在你只需要把所有的东西放在一起:Oracle-用于将日期从一列复制到另一列的Update语句,oracle,sql-update,Oracle,Sql Update,在我的Oracle DB中,CustomerActivity表中有两个日期列;上次更新和上次添加。由于多年来的几次更改,应用程序使用了上次更新,但临时使用了上次添加的日期,在某些情况下,两个列都是随机的(听起来像是糟糕的开发/缺陷),现在它切换回上次更新的日期(疯狂,对吧?) 在任何情况下,我都希望仅当Last Added>Last Update时,才将上次添加的日期值复制到Last Update列中。在此之后,我将从表中删除最后添加的列(永久修复) 如何为此编写更新语句?正如您明确指出的,“只
UPDATE CustomerActivity
SET last_updated = last_added
WHERE last_added > last_updated
正如您明确指出的,“只有在Last Added>Last Update的情况下,我才会将上次添加的日期值复制到Last Update列中”。由于SQL是一种声明性语言,您只需将其转换为SQL:
我想将上次添加的日期值复制到上次更新的日期列中
仅当上次添加>上次更新
现在你只需要把所有的东西放在一起:
UPDATE CustomerActivity
SET last_updated = last_added
WHERE last_added > last_updated
当我运行此操作时,所有符合条件的行(提交前)的记录都为空,不确定为什么会发生这种情况当我运行此操作时,所有符合条件的行(提交前)的记录都为空,不确定为什么会发生这种情况
UPDATE CustomerActivity
SET last_updated = last_added
WHERE last_added > last_updated