Oracle # Sql语句

阳光穿透心脏的1/2处 2024-04-19 10:23 208阅读 0赞

1.SQL中,如何查询存在一个表而不在另一个表中的数据记录

  1. select * from A where not exists(select 1 from B where A.ID=B.ID)

2.oracle update更新语句(sql将一个表中的某一列数据更新到另一个表中)

说明:以下的示例是多列数据

  1. update WORKER_INFO set(WORKER_INFO.CLASS_NAME,WORKER_INFO.CLASS_ID,
  2. WORKER_INFO.ORG_ID,WORKER_INFO.TEAM,WORKER_INFO.GROP)=
  3. (select WORK_INFOKEEP.CLASS_NAME,WORK_INFOKEEP.CLASS_ID,
  4. WORK_INFOKEEP.ORG_ID,WORK_INFOKEEP.TEAM,WORK_INFOKEEP.GROP
  5. from WORK_INFOKEEP where WORK_INFOKEEP.WORK_ID=WORKER_INFO.WORK_ID)

3.新增一个表,通过另一个表的结构和数据

  1. create table XTHAME.tab1 as select * from DSKNOW.COMBDVERSION
  2. 1、创建一张和已经存在的表一样结构的表,同时复制数据
  3. create table newTableName as select * from oldTableName;
  4. //--newTableName 新建表的表名 oldTableName:系统中已经存在的表
  5. truncate table tablename; --删除表数据
  6. 1. 复制表结构及其数据:
  7. create table table_name_new as select * from table_name_old
  8. 2. 只复制表结构:
  9. create table table_name_new as select * from table_name_old where 1=2;
  10. 或者:
  11. create table table_name_new like table_name_old

附加:

①oracle 复制表到另一张,如何把表注释也一并弄过去?

  1. select 'comment on column '||table_name||'.'||column_name||' is '||''''||comments||''';' from user_col_comments where table_name='XXXX'

②获取表注释:

  1. select * from user_tab_comments;

③添加表注释:

  1. comment on table DINGSCHEDULINGHIS is '注释';

4.如果表存在(两个表的表结构一样)

  1. insert into tab1 select * from tab2;

5.两个表的表结构不一样

  1. insert into WORK_ATTENDANCE_DINGANDHANHIS(
  2. WORK_ID,
  3. WORK_NAME,
  4. WORK_ATTENDANCE_DATE,
  5. IS_DAY_WORKER,
  6. IS_MIDDLE_WORKER,
  7. IS_NIGHT_WORKER,
  8. PREPARATION_ONE,
  9. PREPARATION_TWO,
  10. PREPARATION_THREE,
  11. PREPARATION_FOUR,
  12. PREPARATION_FIVE,
  13. REMARK,
  14. ACQUISITIONTIME,
  15. PREPARATION_SIX,
  16. PREPARATION_SEVEN,
  17. PREPARATION_EIGHT
  18. )
  19. select WORK_ID,
  20. WORK_NAME,
  21. WORK_ATTENDANCE_DATE,
  22. IS_DAY_WORKER,
  23. IS_MIDDLE_WORKER,
  24. IS_NIGHT_WORKER,
  25. PREPARATION_ONE,
  26. PREPARATION_TWO,
  27. PREPARATION_THREE,
  28. PREPARATION_FOUR,
  29. PREPARATION_FIVE,
  30. REMARK,
  31. ACQUISITIONTIME,
  32. PREPARATION_SIX,
  33. PREPARATION_SEVEN,
  34. PREPARATION_EIGHT from WORK_ATTENDANCE_DINGANDHAN;--将WORK_ATTENDANCE_DINGANDHAN表中的数据新增至WORK_ATTENDANCE_DINGANDHANHIS

6.同一个表中,将A字段的指赋给B字段

  1. update table_name set B = A;

发表评论

表情:
评论列表 (有 0 条评论,208人围观)

还没有评论,来说两句吧...

相关阅读

    相关 oracle-sql语句优化

    oracle的SQL优化顺序: 1.减少数据访问(减少磁盘访问)-->2.返回更少数据(减少网络交互)-->3.减少交互次数(减少网络交互)-->减少CPU开销-->利用更多

    相关 Oracle sql语句练习

    在网上找的 Oracle sql语句练习 终于磕磕绊  绊的做完了!!!! \--1、查询“c001”课程比“c002”课程成绩高的所有学生的学号; select