1.create table A as select * from b;
如果要在A表中另外增加一个B表所没有字段acc_nbr varchar(30); 在上面那个SQL中如何改写.
不用alter table A add accs_nbr varchar(30);2.create table A as select * from b primary index asset_row_id;这个在建表时,想同时建立索引,SQL好象有问题.应该如何写?
如果要在A表中另外增加一个B表所没有字段acc_nbr varchar(30); 在上面那个SQL中如何改写.
不用alter table A add accs_nbr varchar(30);2.create table A as select * from b primary index asset_row_id;这个在建表时,想同时建立索引,SQL好象有问题.应该如何写?
----------------------------------------------------------------------------- CREATE TABLE "SCOTT"."EMP"
( "EMPNO" NUMBER(4,0),
"ENAME" VARCHAR2(10),
"JOB" VARCHAR2(9),
"MGR" NUMBER(4,0),
"HIREDATE" DATE,
"SAL" NUMBER(10,2),
"COMM" NUMBER(7,2),
"DEPTNO" NUMBER(2,0)
) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
TABLESPACE "USERS"
is flag varchar2(30);
begin
EXECUTE immediate '
create table A as select b.*,'||flag ||' acc_nbr from b
';
end
oracle不提供直接语法支持,即使其它变通方法,可能比上面的方法还麻烦,并且可能达不到你想要的效果,
一句话,没必要。2、oracle不支持,还是多写一句吧。