• 快速复制表结构及数据


    创建表,并复制数据

    create table table1 as select * from table2;

    只创建表结构,不复制数据

    create table table1 as select * from table2 where 1=2;

    复制表数据,两张表字段相同:(table1必须存在)

    insert into table1 select * from table2;

    复制表数据,两张表字段不相同:(table1必须存在)

    insert into table1(field1,field2,field3) select field1,field2,field3 from table2;

    删除表:

    drop talbe table_name;

    删除表数据:

    truncate table table_name;

    如果xxx表不存在某条数据,就从xxx表插入该条数据

    insert into tb_cablecheck_dtsj select od.*, '' ro_type_id from osspad.tb_cablecheck_dtsj od where not exists (select 1 from tb_cablecheck_dtsj d where d.id = od.id)

    带自增长id,需要写成子查询:

    INSERT INTO tb_cablecheck_dtsj SELECT
        SEQ_CABLECHECK_DTSJ_ID.nextval,
        t.*
    FROM
        (
            SELECT
                d.dzid,
                d.dzbm,
                d.sbid,
                d.sbbm,
                d.sblx,
                d.sbmc,
                d.bdsj,
                d.glbh,
                d.gdjgsj,
                d.jcsj,
                d.gxsj,
                d.areaid,
                d.sfpf,
                d.pzgh,
                d.sggh,
                d.gqgh,
                d.xz,
                d.gdbh,
                d.glmc,
                d.install_dzbm,
                d.install_sbbm,
                d.h,
                d.install_sbid,
                '' ro_type_id
            FROM
                osspad.tb_cablecheck_dtsj d,
                area a
            WHERE
                d.areaid = a.area_id
            AND a.parent_area_id = 20
            AND d.bdsj >= TO_DATE ('2016-12-01', 'yyyy-mm-dd')
            AND d.bdsj <= TO_DATE ('2016-12-31', 'yyyy-mm-dd')
        ) t

    备份原表数据

    create table tb_cablecheck_equipment_bak as select * from tb_cablecheck_equipment;

    删除原表

    drop table tb_cablecheck_equipment;

    创建临时表

    create table tb_equipment_20170112 as
    select e.equipment_id,
           e.equipment_code,
           e.equipment_name,
           e.area_id,
           e.address,
           e.res_type_id,
           e.res_type,
           e.manage_area_id,
           e.manage_area,
           e.management_mode,
           e.isrelated,
           e.staff_id,
           e.create_date,
           e.ischecked,
           e.check_date,
           e.operate_staff,
           e.parent_area_id,
           e.grid_id,
           e.install_sbid,
           e.install_sbbm,
           e.install_dzbm,
           decode(e.longitude,null,b.longitude,e.longitude) longitude,
           decode(e.latitude,null,b.latitude,e.latitude) latitude,
           e.station_id,
           e.update_time
      from tb_cablecheck_equipment e left join tb_base_equipment b
      on e.equipment_id = b.phy_eqp_id and e.equipment_code = b.point_no

    恢复原表并插入数据

    create table tb_cablecheck_equipment
    as
    select * from tb_equipment_20170112

    查询原表

    select * from tb_cablecheck_equipment
    select count(1) from tb_cablecheck_equipment
  • 相关阅读:
    高程图 GridMap
    VINS-Mono代码分析与总结(二) 系统初始化
    IMU误差模型与校准
    VINS-Mono代码分析与总结(一) IMU预积分
    XJTU 大一上
    iOS路由最佳选择是什么
    正向代理、反向代理、透明代理
    centos7国内镜像glbc版安装
    IntelliJ idea 中使用Git
    Mongo DB 2.6 需要知道的一些自身限定
  • 原文地址:https://www.cnblogs.com/xyhero/p/688715582ebb0c5c3430aabb28aa2401.html
Copyright © 2020-2023  润新知