第一个很简单:
insert into mytable (id,col1,col2...)
select 8002,col1,col2...
where id=8001;第二个比较讨厌,提前三个月大概只能写个函数来处理,但是遇到 2004/05/30 的情况怎么办?2004/02/30 不是一个合法的日期
insert into mytable (id,col1,col2...)
select 8002,col1,col2...
where id=8001;第二个比较讨厌,提前三个月大概只能写个函数来处理,但是遇到 2004/05/30 的情况怎么办?2004/02/30 不是一个合法的日期
insert into mytable (id,col1,col2...)
select 8002,...,add_months(col,-3),...
from ...
where id=8001;
select 8002,col1,col2,col3,...,add_months(col_date,-3),...)
from ...
WHERE id=8001;
select 8002,col1,add_months(col,-3)
from mytable
where id=8001;
select 8002,add_months(col1,-3),add_months(col2,-3)...
where id=8001;
add_months能够处理我说的情况,见下例SQL> select add_months(to_date('2005/05/30','yyyy-mm-dd'),-3) from dual;ADD_MONTHS(TO_DA
----------------
2005-02-28-00:00