shaerzzr 发表于 2018-9-8 13:08:20

运维常用SQL命令(oracle)

  复制表结构及表数据:
  create table table_name_new as select * from table_name_old
  复制表结构:
  create table table_name_new like table_name_old
  复制表数据:
  insert into K20_JDBC_TMP select * from K20_JDBC;
  设置为空字段数据为-1:
  update K20_JDBC_TMP set JDBCTIME_MS=-1 WHERE JDBCTIME_MS is NULL;
  清空表数据:
  truncate table K20_JDBC_TMP
  重命名表名:
  ALTER TABLE old_name RENAME TO new_name
  或者
  rename table to table_new
  添加字段的语法:
  alter table tablename add (column datatype ,….);
  alter table K20_JDBC_TMP2 add T1 CHAR(20) default null; //默认允许为空
  修改字段的语法:
  alter table tablename modify (column datatype ,….);
  alter table K20_JDBC_TMP2 modify T1 CHAR(30) default null;
  删除字段的语法:
  alter table tablename drop (column);
  alter table K20_JDBC_TMP2 drop column T1;
  比较两个表数据差异:
  select * from B minus select * from A
  selecet pno,cno from A minus select pno,cno from B
  比较两张表结构相同的表,并将不同的数据插入第三张表中。
  insert into K20_JDBC_TMP2(TMZDIFF,WRITETIME,NODE,TIMESTAMP,IP,NODENAME,SERVERNAME,PROVIDERNAME,JDBCNAME,CREATECOUNT,CLOSECOUNT,POOLSIZE,FREEPOOLSIZE,USEDMAX_PCT,JDBCTIME,WAITTIME,USETIME,WAITINGTHREADCOUNT,JDBCTIME_MS,WAITTIME_MS,USETIME_MS) select * from K20_JDBC MINUS SELECT * FROM K20_JDBC_TMP

页: [1]
查看完整版本: 运维常用SQL命令(oracle)