日期:2014-05-17  浏览次数:21042 次

源表比目标表只少一个字段,如何不写字段名插入?
比如
A表 四个字段a,b,c,gdsj

B表 三个字段a,b,c

B表的 前三个字段和A表完全一样,A表多一个日期字段gdsj
(GDSJ      VARCHAR2(14) default to_char(sysdate,'yyyymmddhh24Miss') not null)

我想
 insert into A  select * from B where a='320000790085581'
但提示没有足够的值

 insert into A  select *,to_char(sysdate,'yyyymmddhh24Miss') gdsj from B where a='320000790085581'
这样又提示找不到 from关键字

请问怎么才能不写具体字段名实现 B表插入到A表(我这是举例,其实A/B表字段都很多)

 
------解决方案--------------------
引用:
我想
 insert into A  select * from B where a='320000790085581'
但提示没有足够的值

 insert into A  select *,to_char(sysdate,'yyyymmddhh24Miss') gdsj from B where a='320000790085581'
这样又提示找不到 from关键字

请问怎么才能不写具体字段名实现 B表插入到A表(我这是举例,其实A/B表字段都很多)

 

试试:
insert into A  select B.*,to_char(sysdate,'yyyymmddhh24Miss') gdsj from B where a='320000790085581'